Automatische Berechnung (Eingabe in HTML) in einer PHP-eMail?

altox-de

Erfahrenes Mitglied
Hallo zusammen.
Ich hätte da mal ne Frage:

Auf http://www.sz-sprachlos.de kann man Exemplare unserer Schülerzeitung bestellen! (Dazu auf "Shop" und "hier" klicken - Schaut doch mal rein :-) )
Man kann dort eingeben, wieviele Ausgaben, man bestellen möchte.

Die Bestellung wird dann mit einem PHP-Script an und und den Besteller versandt.
Ist es möglich, in der eMail dann automatisch den Endbetrag zu berechnen?

Das müsste so aussehen: (Y x 1) + (Y x 1,50)
"Y" ist die Anzahl der bestellten Zeitungen. Jede Zeitung kostet einen Euro.
Dazu kommt noch für jede Zeitung 1,50€ für Versand & Verpachung. "x" ist "mal".

GEHT DAS? WÄRE SUPER, WENN IHR MIR HELFEN KÖNNTET,
LIEBE GRÜßE & DANKE,

Claudi
 
Klar geht das, einfach die Email erweitern. Poste mal den Code von dem verschickenden Script, das kann man ganz leicht anpassen..
 
PHP:
<?PHP
 
 $Fehlen = "";
 if (empty($Name)) {
    $Fehlen = $Fehlen."<LI>Ihr Name";
 } 
  if (empty($Adresse1)) {
    $Fehlen = $Fehlen."<LI>Ihre Straße + Hausnummer";
 }
  if (empty($Adresse2)) {
    $Fehlen = $Fehlen."<LI>Ihre PLZ + Stadt";
 } 
  if (empty($eMail)) {
    $Fehlen = $Fehlen."<LI>Ihre eMail-Adresse";
 } 
  if (empty($Anzahl)) {
    $Fehlen = $Fehlen."<LI>Die Bestellanzahl";
 } 
    
 if (!empty($Fehlen)) {
   echo "<body leftmargin=2 marginheight=1 marginwidth=0 topmargin=1><font size=3 face=Arial>Sie sind hier: sz-sprachlos.de > Shop > Bestellung > Fehler</font><br><table width=1 border=0 cellspacing=0 cellpadding=0 height=13><tr height=13><td width=1 height=13></td></tr></table>";
   echo "<font size=3 face=Arial>Bitte entschuldigen Sie, aber Ihre Bestellung wurde nicht versandt.<BR>";
   echo "Es fehlten nämlich folgende Angaben:<BR><BR>";
   echo "<B>$Fehlen</B><BR><BR>";
   echo "Bitte versuchen Sie es erneut!<BR>";
   echo "Wichtig ist, dass Sie ALLE Felder ausfüllen!<BR><BR>Danke!</font>";
} else {
 
  $header = "MIME-Version: 1.0\n"; 
$header .= "Content-type: text/html; charset=iso-8859-1\n"; 
$header .= "From: redaktion@sz-sprachlos.de\n";
  
  $Body ="<html><body><font size=4 face=Arial><b>Bestellung</b><font size=3> <br> 
  von $Anzahl Ausgaben der $Ausgabe <p> <u>Daten:</u><br>Name: $Name <br> Adresse: $Adresse1, $Adresse2 <br> eMail: $eMail <br> Datum: ".date("d. m. (M) Y - H:i")." Uhr <br> IP-Adresse: $REMOTE_ADDR <p> <u>Bezahlung</u><br>Zur Zeit ist noch keine Bestellung möglich!<br>Die Zeitung erscheint Mitte Februar! <p>Vielen Dank für Ihren Einkauf,<br>Ihre Redaktion<p> eMail: <a href=mailto:redaktion@sz-sprachlos.de>redaktion@sz-sprachlos.de</a><br>Homepage: <a href=http://www.sz-sprachlos.de>www.sz-sprachlos.de</a></body></html>";
    mail("$eMail;$An", "$Betreff", "$Body", $header );

  header ("location: http://www.altox.de/015-00-sz-sprachlos-04-05/pages/shop/danke.html");

 }
    
?>
 
Zuletzt bearbeitet:
Super! Das klappt ja schon großartig!
Nur wird jetzt z.B. "7.5 Euro" ausgegeben.
Das versteht zwar jeder, schöner wäre aber "7,50 Euro".
Geht das auch noch irgendwie?
 
Wo muss ich das einbauen?
Anstatt des vorherigen $Preis-Codes?

PHP:
<?PHP
 
 $Fehlen = "";
 if (empty($Name)) {
    $Fehlen = $Fehlen."<LI>Ihr Name";
 } 
  if (empty($Adresse1)) {
    $Fehlen = $Fehlen."<LI>Ihre Straße + Hausnummer";
 }
  if (empty($Adresse2)) {
    $Fehlen = $Fehlen."<LI>Ihre PLZ + Stadt";
 } 
  if (empty($eMail)) {
    $Fehlen = $Fehlen."<LI>Ihre eMail-Adresse";
 } 
  if (empty($Anzahl)) {
    $Fehlen = $Fehlen."<LI>Die Bestellanzahl";
 } 
    
 if (!empty($Fehlen)) {
   echo "<body leftmargin=2 marginheight=1 marginwidth=0 topmargin=1><font size=3 face=Arial>Sie sind hier: sz-sprachlos.de > Shop > Bestellung > Fehler</font><br><table width=1 border=0 cellspacing=0 cellpadding=0 height=13><tr height=13><td width=1 height=13></td></tr></table>";
   echo "<font size=3 face=Arial>Bitte entschuldigen Sie, aber Ihre Bestellung wurde nicht versandt.<BR>";
   echo "Es fehlten nämlich folgende Angaben:<BR><BR>";
   echo "<B>$Fehlen</B><BR><BR>";
   echo "Bitte versuchen Sie es erneut!<BR>";
   echo "Wichtig ist, dass Sie ALLE Felder ausfüllen!<BR><BR>Danke!</font>";
} else {
 
  $header = "MIME-Version: 1.0\n"; 
$header .= "Content-type: text/html; charset=iso-8859-1\n"; 
$header .= "From: redaktion@sz-sprachlos.de\n";

$Preis=$Anzahl+($Anzahl*1.5);
  
  $Body ="<html><body><font size=4 face=Arial><b>Bestellung</b><font size=3> <br> 
  von $Anzahl Ausgaben der $Ausgabe <p> <u>Daten:</u><br>Name: $Name <br> Adresse: $Adresse1, $Adresse2 <br> eMail: $eMail <br> Datum: ".date("d. m. (M) Y - H:i")." Uhr <br> IP-Adresse: $REMOTE_ADDR <p> <u>Bezahlung</u><br>Ihre bestellte Ware kostet insgesamt $Preis Euro.<br>Bitte überweisen Sie diesen Betrag an:<p>Bitte beachten Sie unbedingt eine fristgerechte Zahlung!<br> Bedingungen finden Sie auf shop.sz-sprachlos.de <p>Vielen Dank für Ihren Einkauf,<br>Ihre Redaktion<p> eMail: <a href=mailto:redaktion@sz-sprachlos.de>redaktion@sz-sprachlos.de</a><br>Homepage: <a href=http://www.sz-sprachlos.de>www.sz-sprachlos.de</a></body></html>";
    mail("$eMail;$An", "$Betreff", "$Body", $header );

  header ("location: http://www.altox.de/015-00-sz-sprachlos-04-05/pages/shop/danke.html");

 }
    
?>
 
Zuletzt bearbeitet:
Sorry, aber da verstehe ich nur Bahnhof - tut mir echt leid!
Muss ich die beiden geposteten Code-Schnipsel kombinieren oder mpssen die beide rein - und wenn ja, wo?
 
Code:
<?PHP 

$Fehlen = ""; 
if (empty($Name)) { 
    $Fehlen = $Fehlen."<LI>Ihr Name"; 
} 
  if (empty($Adresse1)) { 
    $Fehlen = $Fehlen."<LI>Ihre Straße + Hausnummer"; 
} 
  if (empty($Adresse2)) { 
    $Fehlen = $Fehlen."<LI>Ihre PLZ + Stadt"; 
} 
  if (empty($eMail)) { 
    $Fehlen = $Fehlen."<LI>Ihre eMail-Adresse"; 
} 
  if (empty($Anzahl)) { 
    $Fehlen = $Fehlen."<LI>Die Bestellanzahl"; 
} 
     
if (!empty($Fehlen)) { 
   echo "<body leftmargin=2 marginheight=1 marginwidth=0 topmargin=1><font size=3 face=Arial>Sie sind hier: sz-sprachlos.de > Shop > Bestellung > Fehler</font><br><table width=1 border=0 cellspacing=0 cellpadding=0 height=13><tr height=13><td width=1 height=13></td></tr></table>"; 
   echo "<font size=3 face=Arial>Bitte entschuldigen Sie, aber Ihre Bestellung wurde nicht versandt.<BR>"; 
   echo "Es fehlten nämlich folgende Angaben:<BR><BR>"; 
   echo "<B>$Fehlen</B><BR><BR>"; 
   echo "Bitte versuchen Sie es erneut!<BR>"; 
   echo "Wichtig ist, dass Sie ALLE Felder ausfüllen!<BR><BR>Danke!</font>"; 
} else { 

  $header = "MIME-Version: 1.0\n"; 
$header .= "Content-type: text/html; charset=iso-8859-1\n"; 
$header .= "From: redaktion@sz-sprachlos.de\n"; 

$Preis=$Anzahl+($Anzahl*1.5);
$Preis=sprintf("%01.2f", $Preis);
   
  $Body ="<html><body><font size=4 face=Arial><b>Bestellung</b><font size=3> <br> 
  von $Anzahl Ausgaben der $Ausgabe <p> <u>Daten:</u><br>Name: $Name <br> Adresse: $Adresse1, $Adresse2 <br> eMail: $eMail <br> Datum: ".date("d. m. (M) Y - H:i")." Uhr <br> IP-Adresse: $REMOTE_ADDR <p> <u>Bezahlung</u><br>Ihre bestellte Ware kostet insgesamt $Preis Euro.<br>Bitte überweisen Sie diesen Betrag an:<p>Bitte beachten Sie unbedingt eine fristgerechte Zahlung!<br> Bedingungen finden Sie auf shop.sz-sprachlos.de <p>Vielen Dank für Ihren Einkauf,<br>Ihre Redaktion<p> eMail: <a href=mailto:redaktion@sz-sprachlos.de>redaktion@sz-sprachlos.de</a><br>Homepage: <a href=http://www.sz-sprachlos.de>www.sz-sprachlos.de</a></body></html>"; 
    mail("$eMail;$An", "$Betreff", "$Body", $header ); 

  header ("location: http://www.altox.de/015-00-sz-sprachlos-04-05/pages/shop/danke.html"); 

} 
     
?>

Try this!
 
Zurück