Bestellformular für EINZEL-Artikel mit Antwortmail
Bestellformular für EINZEL-Artikel mit Antwortmail
Hallo zusammen,
ich suche für einen EINZELNEN Artikel ein Bestellformular, das nach Klick auf "Absenden" - im Optimalfall - folgendes macht:
- Prüfung, ob alle Pflichtfelder ausgefüllt sind
- Bestätigungsseite (Danke für Ihre Bestellung, die Einzelheiten erhalten Sie per Mail an die angegebene Email-Adresse)
- 1 x Mail an Kunden mit allen eingegebenen Daten und Gesamtpreis (berechnet aus Menge des Artikels x Preis + Versandkosten für D oder Europaweit) und weiterem Texthinweis auf Vorkasse
- 1 x Mail an mich, die - im Optimalfall - gleich als Lieferschein/Rechnung im PDF-Format ankommt.
Gibt es sowas, bzw. wie könnte das - vor allem die Erstellung des Lieferschein als PDF - gemacht werden?
DANKE!
Uwe
ich suche für einen EINZELNEN Artikel ein Bestellformular, das nach Klick auf "Absenden" - im Optimalfall - folgendes macht:
- Prüfung, ob alle Pflichtfelder ausgefüllt sind
- Bestätigungsseite (Danke für Ihre Bestellung, die Einzelheiten erhalten Sie per Mail an die angegebene Email-Adresse)
- 1 x Mail an Kunden mit allen eingegebenen Daten und Gesamtpreis (berechnet aus Menge des Artikels x Preis + Versandkosten für D oder Europaweit) und weiterem Texthinweis auf Vorkasse
- 1 x Mail an mich, die - im Optimalfall - gleich als Lieferschein/Rechnung im PDF-Format ankommt.
Gibt es sowas, bzw. wie könnte das - vor allem die Erstellung des Lieferschein als PDF - gemacht werden?
DANKE!
Uwe
- mad-manne
- Ehemaliges Teammitglied
- Beiträge: 5403
- Registriert: 18.03.2005 10:00
- Wohnort: Marl im Ruhrgebiet
unter http://www.hotscripts.com/PHP/index.html findest du schon mal 'ne Menge ...
Wenn es in ein phpBB integriert sein soll, dann solltest du mal hier suchen:
http://phpbbstuff.ddblog.org/projects/mdd/mdd.php
Gruss,
Manne.
Wenn es in ein phpBB integriert sein soll, dann solltest du mal hier suchen:
http://phpbbstuff.ddblog.org/projects/mdd/mdd.php
Gruss,
Manne.
Try not. Do or do not. There is no try. (YODA)
Supportanfragen via E-Mail oder PN werden ignoriert
Supportanfragen via E-Mail oder PN werden ignoriert
Hi,
nein, es soll nicht in phpBb intergriert sein.
Das Problem ist ja nicht, ein Formular aufzubauen und per PHP zu versenden; dazu gibt es ja eine Menge Scripte.
Das Problem - zumindest für mich - ist für die Bestätigungsmail BERECHNUNGEN durchzuführen und das Erstellen eines PDF.
Vielleicht hat ja jemand einen konkreten Tipp!?

Uwe
nein, es soll nicht in phpBb intergriert sein.
Das Problem ist ja nicht, ein Formular aufzubauen und per PHP zu versenden; dazu gibt es ja eine Menge Scripte.
Das Problem - zumindest für mich - ist für die Bestätigungsmail BERECHNUNGEN durchzuführen und das Erstellen eines PDF.
Vielleicht hat ja jemand einen konkreten Tipp!?

Uwe
- mad-manne
- Ehemaliges Teammitglied
- Beiträge: 5403
- Registriert: 18.03.2005 10:00
- Wohnort: Marl im Ruhrgebiet
Also mit PDF kenn' ich mich nicht aus .. aber als Startpunkt vielleicht das hier?!
Nun zu den Berechnungen:
Nehmen wir mal an, du hast folgende Variablen $einzelpreis und $menge ...
Dann geht das einfach so:
Gruss,
Manne.
P.S: Info zur Funktion round() gibt's hier!
Nun zu den Berechnungen:
Nehmen wir mal an, du hast folgende Variablen $einzelpreis und $menge ...
Dann geht das einfach so:
Code: Alles auswählen
<?php
// dein sonstiger Code hier ...
$gesamtpreis = $einzelpreis * $menge;
$gesamtpreis = round($gesamtpreis,2);
?>
Manne.
P.S: Info zur Funktion round() gibt's hier!
Try not. Do or do not. There is no try. (YODA)
Supportanfragen via E-Mail oder PN werden ignoriert
Supportanfragen via E-Mail oder PN werden ignoriert
Hi Manne,
bisher klappt alles soweit ...vom PDF habe ich mich gedanklich veranschiedet, da ich absoluter php-Anfänger bin
Rechnen klappt auch, nur werden volle Zahlen ohne Nachkommastellen ausgegeben und statt des "Kommas" steht ein "Punkt" da.
Wie kann ich es formatieren als:
Zahl mit 2 Nachkommastellen und dem Komma (statt Punkt)?
Noch eine letzte Frage: Ich würde gerne das aktuelle Datum + Uhrzeit des Formularversandes übernehmen, um z.B. im Bestätigungsmail-Text schreiben zu können: "Sie haben soeben, am tt.mm.yy, um hh:mm Uhr folgendes bestellt ..."
Wenn ich im $mailtext schreibe: "Ihre Bestellung vom $date() ..." wird nur "()" übermittelt. Wie geht es richtig?
... ach wenn ich schon dabei bin (langsam fängt php an Spaß zu machen
):
Der Versand kann gehen nach:
- Deutschland
- Schweiz
- Niederlande
(Ist im Formular-Listmenü so als dropdown auswählbar)
Die Versandkosten nach D sind z.B. 2,00 EUR, andere Länder z.B. 4,00 EUR.
So, wie krieg ich das nun im Mailtext "gebacken"?
$versandkosten =
if ($land == "Deutschland" ... dann nehme bitte "2", ansonsten "4" ... so ähnlich geht das mit der IF-Funktion in Excel ... aber hier?
DANKE
Uwe
bisher klappt alles soweit ...vom PDF habe ich mich gedanklich veranschiedet, da ich absoluter php-Anfänger bin

Rechnen klappt auch, nur werden volle Zahlen ohne Nachkommastellen ausgegeben und statt des "Kommas" steht ein "Punkt" da.
Wie kann ich es formatieren als:
Zahl mit 2 Nachkommastellen und dem Komma (statt Punkt)?
Noch eine letzte Frage: Ich würde gerne das aktuelle Datum + Uhrzeit des Formularversandes übernehmen, um z.B. im Bestätigungsmail-Text schreiben zu können: "Sie haben soeben, am tt.mm.yy, um hh:mm Uhr folgendes bestellt ..."
Wenn ich im $mailtext schreibe: "Ihre Bestellung vom $date() ..." wird nur "()" übermittelt. Wie geht es richtig?
... ach wenn ich schon dabei bin (langsam fängt php an Spaß zu machen

Der Versand kann gehen nach:
- Deutschland
- Schweiz
- Niederlande
(Ist im Formular-Listmenü so als dropdown auswählbar)
Die Versandkosten nach D sind z.B. 2,00 EUR, andere Länder z.B. 4,00 EUR.
So, wie krieg ich das nun im Mailtext "gebacken"?
$versandkosten =
if ($land == "Deutschland" ... dann nehme bitte "2", ansonsten "4" ... so ähnlich geht das mit der IF-Funktion in Excel ... aber hier?
DANKE

Uwe
uwe.hanss hat geschrieben:Wie kann ich es formatieren als:
Zahl mit 2 Nachkommastellen und dem Komma (statt Punkt)?
Code: Alles auswählen
setlocale(LC_ALL, "de_DE", "german");
printf("%.2f", $zahl);
Das geht mit [php:date] (oder mit deutschen Monats- und Wochentagnamen: setlocale (s.o.) + [php:strftime]).uwe.hanss hat geschrieben:Noch eine letzte Frage: Ich würde gerne das aktuelle Datum + Uhrzeit des Formularversandes übernehmen, um z.B. im Bestätigungsmail-Text schreiben zu können: "Sie haben soeben, am tt.mm.yy, um hh:mm Uhr folgendes bestellt ..."
http://de.php.net/manual/de/language.co ... uctures.ifuwe.hanss hat geschrieben:$versandkosten =
if ($land == "Deutschland" ... dann nehme bitte "2", ansonsten "4" ... so ähnlich geht das mit der IF-Funktion in Excel ... aber hier?
KB:knigge
Moin,
so, weiter geht´s
Mit den verschiedenen Versandkosten und dem Datum + Uhrzeit klappt
Aber das mit dem Zahlenformat "will nicht"
Wenn ich ganz am Anfang der Seite eingebe:
wird mir beim Aufruf der Seite in der 1. Zeile ein "0,00" angezeigt.
Ich will aber NICHT, dass die verschiedenen Zahlen ($betrag, $summe, $versandkosten, etc.) auf der Seite angezeigt werden, sondern in der Bestätigungsmail angezeigt und entsprechend formatiert werden.
Beispiel (auszugsweise):
Wie bekomme ich die Zahlen im Mailtext formatiert?
Nochwas
:
Nach Absenden der Bestellung kommt ein:
Kann, bzw. wie bekomme ich dieses Meldung - anstatt auf die Seite selbst - in ein pop-up-Fenster?
DANKE!
Uwe
so, weiter geht´s

Mit den verschiedenen Versandkosten und dem Datum + Uhrzeit klappt

Aber das mit dem Zahlenformat "will nicht"

Wenn ich ganz am Anfang der Seite eingebe:
Code: Alles auswählen
<?php
setlocale(LC_ALL, "de_DE", "german");
printf("%.2f", $summe);
Ich will aber NICHT, dass die verschiedenen Zahlen ($betrag, $summe, $versandkosten, etc.) auf der Seite angezeigt werden, sondern in der Bestätigungsmail angezeigt und entsprechend formatiert werden.
Beispiel (auszugsweise):
Code: Alles auswählen
if (isset($_POST["submit"]))
{
$betreff = "Ihre Bestellung ";
$preis = 19.50;
$betrag = $anzahl * $preis;
$summe = $betrag + $versandkosten;
$mwst = $summe * 0.1379;
$text = "Bitte zahlen Sie $betrag + $versandkosten = $summe"
Nochwas

Nach Absenden der Bestellung kommt ein:
Code: Alles auswählen
echo "Vielen Dank für ..."
DANKE!
Uwe
Das sind zwei Teile. Der [php:setlocale] Aufruf stellt die Sprache um und [php:printf] sorgt für die Ausgabe (steht auch so in der Doku). Wenn du das ganze nicht direkt ausgeben willst, nimm [php:sprintf].uwe.hanss hat geschrieben:Wenn ich ganz am Anfang der Seite eingebe:wird mir beim Aufruf der Seite in der 1. Zeile ein "0,00" angezeigt.Code: Alles auswählen
<?php setlocale(LC_ALL, "de_DE", "german"); printf("%.2f", $summe);
Ich will aber NICHT, dass die verschiedenen Zahlen ($betrag, $summe, $versandkosten, etc.) auf der Seite angezeigt werden, sondern in der Bestätigungsmail angezeigt und entsprechend formatiert werden.
KB:knigge
Hi Pyramide,
sorry, et will nit
Hier mal der Quelltext (auszugsweise):

Uwe
sorry, et will nit

Hier mal der Quelltext (auszugsweise):
Code: Alles auswählen
<?php
setlocale(LC_ALL, "de_DE", "german");
sprintf("%.2f", $betrag);
if (isset($_POST["submit"]))
{
$betreff = "Ihre Bestellung";
$preis = 19.50;
$betrag = $anzahl * $preis;
$text_kunde = "Vielen Dank für Ihre Bestellung von $anzahl Artikel
Zu zahlen:
$anzahl x $preis EUR = $betrag EUR
";
while(list($name,$value)=each($_POST))
{$text.="$name: $value\n\n";}
if(empty ($_POST["anzahl"]) OR empty ($_POST["vorname"]) OR empty($_POST["nachname"]) OR empty ($_POST["strasse"]) OR empty ($_POST["plz"]) OR empty ($_POST["ort"]) OR empty ($_POST["email"]))
{echo "<h1>Bitte füllen Sie alle Felder aus!</h1><br><a href='javascript:history.back()'>zurück zu Ihren Eingaben<br></a>";}
else
{
mail(
$email,
$betreff,
$text_kunde,
);
}
?>

Uwe