die genaue überprüfung der feldinhalte ist schon mit javascript in der html-datei passiert. hier findet quasi eine zweite überprüfung statt, ob die werte per post auch rüberkamen. und der auskommentierte if block hat nix mit dem else zu tun! glaubs mir halt .-) siehe hierzu unten im code den kommentar "Anfang des größeren Blocks, falls kein Fehler auftrat. Inkl. Mailversand und DB-Eintrag" klar, die html-datei habt ihr nicht gesehen, drum habt ihr da auch nicht nach dem fehler sehen können .-/ aber das ergebnis zählt ja und nu passt alles. hier nochmal die funktionierende php-datei, an der ausgabe der mails, den fehlermeldungen auf englisch, etc. arbeit ich natürlich noch.
nochmals. danke an alle. is ne feine sache das ding. wenn ich jetzt noch wüßt, ob ich beim umstellen der erzeugten mail von plaintext auf html irgendwelche grafiken einbinden kann, wär ich voll zufrieden. aber des geht wohl nur mit link übers internet, oder?
PHP-Code:
<html>
<head>
</head>
<body>
<?php
// Variablen werden mit Daten aus dem POST der HTML-Form gefüllt
$vorname = $_POST['vorname'];
$nachname = $_POST['nachname'];
$email = $_POST['email'];
$strasse = $_POST['strasse'];
$plz = $_POST['plz'];
$wohnort = $_POST['wohnort'];
$tel = $_POST['tel'];
$fax = $_POST['fax'];
$homepage = $_POST['homepage'];
// Überprüfung, ob alle Parameter vorhanden sind
if($vorname){}
else{
$error.="Please, go back and fill out your first name\n";
}
if($nachname){}
else{
$error.="Please, go back and fill out your last name\n";
}
if($email){}
else{
$error.="Please, go back and fill out your e-mail address\n";
}
if($tel){}
else{
$error.="Please, go back and fill out your phone number\n";
}
if($strasse){}
else{
$error.="Please, go back and fill out your mailing address\n";
}
if($wohnort){}
else{
$error.="Please, go back and fill out your city name\n";
}
if($plz){}
else{
$error.="Please, go back and fill out your zip code\n";
}
// Anfang des größeren Blocks, falls kein Fehler auftrat. Inkl. Mailversand und DB-Eintrag
// Mail an den Eintragenden
if($error == "") {
echo "Thank you for inquiring about us! A receipt of your submission will be e-mailed to you almost immediately.";
$mailContent = "--------CONTACT--------\n"
."First Name: ".$vorname."\n"
."Last Name: ".$nachname."\n"
."E-mail: ".$email."\n"
."Website: ".$homepage."\n\n--------PHONE--------\n"
."Phone: ".$tel."\n"
."Fax: ".$fax."\n"
."Street Address: ".$strasse."\n"
."City: ".$wohnort."\n"
."Zip Code: ".$plz."\n\n--------INFO--------\n";
// Mail an den Homepagebesitzer
$toAddress = "meine@mail.com";
$subject = "Betreff fuer Homepagebesitzer";
$recipientSubject = "Betreff fuer Absender";
$receiptMessage = "Thank you ".$vorname." for inquiring about MyWebSite.com's Products!\n\n\nHere is what you submitted to us:\n\n"
."--------CONTACT--------\n"
."First Name: ".$vorname."\n"
."Last Name: ".$nachname."\n"
."E-mail: ".$email."\n"
."Website: ".$homepage."\n\n--------PHONE--------\n"
."Phone: ".$tel."\n"
."Fax: ".$fax."\n"
."Street Address: ".$strasse."\n"
."City: ".$wohnort."\n"
."Zip Code: ".$plz."\n\n--------INFO--------\n";
// Versand der oben definierten Mails
mail($email, $subject, $receiptMessage,"From:$toAddress");
mail($toAddress,$recipientSubject,$mailContent,"From:$email");
//--->echo $mailContent;
// DB-Verbindungsaufbau # WICHTIG: Hier Datenbankverbindung immer ändern auf die gewünschte! #
$connection = mysql_connect("host","user", "pwd") or die("Unable to connect!");
mysql_select_db("database") or die("Unable to select database!"); /* change this! */
// Eintrag in die DB # WICHTIG: Hier Datenbankfelder anpassen, wie oben auch! #
$query="INSERT INTO kontaktformular (
vorname,
nachname,
email,
strasse,
plz,
wohnort,
tel,
fax,
homepage)
VALUES(
'".$vorname."',
'".$nachname."',
'".$email."',
'".$strasse."',
'".$plz."',
'".$wohnort."',
'".$tel."',
'".$fax."',
'".$homepage."')";
$result = mysql_query($query) or die("Error in query:".mysql_error());
//if ($result)
//echo mysql_affected_rows()." row inserted into the database effectively.";
mysql_close($connection);
}
// Falls ein Feld nicht ausgefüllt wurde und es beim JavaScript übersehen wurde, wird hier nochmal eine Prüfung vorgenommen:
else{
//print "Sorry, but the form cannot be sent until the fields indicated are filled out completely - \n";
//print "$error\n";
print "vorname: $vorname\n";
print "nachname: $nachname\n";
//print "$email\n";
//print "$strasse\n";
//print "$plz\n";
print "wohnort: $wohnort\n";
//print "$tel\n";
//print "$fax\n";
//print "$homepage\n";
//print "\n";
//print "\n";
//print "Please use your \"Back\" button to return to the form to correct the omissions. Thank you.\n";
}
?>
</body>
</html>
Kommentar