Malcolm Toles
Freiberuflicher Dozent & Entwickler
fon 0176/83141685";
// Bei manchen Webhoster ist es notwendig, dass noch ein zusätzlicher Parameter übergeben wird, der Ihre E-Mail-Adresse
// enthält.
// Bei den meisten Hostern ist dies nicht notwendig, dann müssen Sie zwischen die beiden "" nichts einfügen
// aber z.B. bei Hosteurope ist die Angabe zwingend und dann müssen sie hier eine Ihrem Webpack zugehörige und
// eingerichtete E-Mail-Adresse eintragen, z.B. in dieser Form: $add = "info@ihre_webpack_domain.tld"
// NOCHMAL: Setzen Sie hier nur was ein, wenn Sie wissen das es notwendig ist!!!
$add = "info@mt-company.de";
// Ab hier sollten Sie nur noch etwas ändern, wenn sie wissen was sie tun,
// bzw. wenn sie noch mehr am Design ändern wollen.
//hier wird die Länge der verschiedenen Eingaben ermittelt
$lengthm = strlen($_POST["send"]["mail"]);
$lengtha = strlen($_POST["send"]["autor"]);
$lengthb = strlen($_POST["send"]["betreff"]);
$lengthn = strlen($_POST["send"]["nachricht"]);
// der Zähler wird auf null gesetzt
$i = "0";
// Je nachdem welche Adresse als Absender benutzt werden soll, wird die Variable beschrieben:
if ($absender == "0") {
$from = $adresse ; }
else { $from = $_POST["send"]["mail"] ; }
//Nun überprüfen wir die Eingaben auf alle möglichen Fehler (Es muss überall was eingegeben werden,
// die Einträge dürfen eine bestimmte Länge nicht überschreiten und die E-Mail-Adresse muss ein @ enthalten)
// Ausserdem darf im Namensfeld kein @ Zeichen enthalten sein und in der Adresse nicht mehr als eins.
// Das ist notwendig, damit im vierten Parameter keine CC oder BCC Adressen übergeben werden können
// Und zu guter Letzt werden die Sonderzeichen für die HTML-Ausgabe codiert und die Backslashes aus der Mail entfernt
if(isset($_POST["send"]) && is_array($_POST["send"])) {
if(empty($_POST["send"]["autor"])) {
$fautor = "Sie müssen einen Namen eingeben!
";
} else { $fautor = "Name ok!
"; $i++; }
if(empty($_POST["send"]["betreff"])) {
$fbetreff = "Sie müssen einen Betreff eingeben!
";
} else { $fbetreff = "Betreff ok!
"; $i++; }
if(empty($_POST["send"]["mail"])) {
$fmail = "Sie müssen Ihre E-Mail-Adresse eingeben!
";
} else { $fmail = "Adresse ok!
"; $i++; }
if(empty($_POST["send"]["nachricht"])) {
$fnachricht = "Sie müssen eine Nachricht eingeben!
";
} else { $fnachricht = "Nachricht ok!
"; $i++; }
if ($lengthm > "50") {
$flmail = "Ihre eingegebene E-Mail-Adresse ist zu lang!
"; $fmail = ""; }
else { $i++; }
if ($lengtha > "30") {
$flautor = "Ihr eingegebener Name ist zu lang!
"; $fautor = ""; }
else { $i++; }
if ($lengthb > "150") {
$flbetreff = "Ihr eingegebener Betreff ist zu lang!
"; $fbetreff = ""; }
else { $i++; }
if ($lengthn > "60000") {
$flnachricht = "Ihre eingegebene Nachricht darf nicht mehr
als 60000 Zeichen haben! Sie hat: ".$lengthn."
"; $fnachricht = ""; }
else { $i++; }
if (!strpos($_POST["send"]["mail"], "@") == "false" or substr_count($_POST["send"]["mail"], "@") > 1) {
$fgmail = "Ihre angegebene E-Mail Adresse ist nicht gültig!
"; $fmail = ""; }
else { $i++; }
if (substr_count($_POST["send"]["autor"], "@") >= 1) {
$fgautor = "Aus Sicherheitsgründen darf das Namensfeld kein @ Zeichen enthalten!
"; $fautor = "";
} else { $i++; }
$str = ":\/,\"";
if (strcspn($_POST["send"]["mail"], $str) < $lengthm) {
$fgmail = "Ihre angegebene E-Mail Adresse ist nicht gültig!
"; $fmail = "" ;
} else { $i++ ; }
if (get_magic_quotes_gpc() == "1") {
$_POST["send"]["autor"] = stripslashes($_POST["send"]["autor"]);
$_POST["send"]["betreff"] = stripslashes($_POST["send"]["betreff"]);
$_POST["send"]["mail"] = stripslashes($_POST["send"]["mail"]);
$_POST["send"]["nachricht"] = stripslashes($_POST["send"]["nachricht"]);
}
$sautor = htmlspecialchars($_POST["send"]["autor"]);
$sbetreff = htmlspecialchars($_POST["send"]["betreff"]);
$smail = htmlspecialchars($_POST["send"]["mail"]);
$snachricht = htmlspecialchars($_POST["send"]["nachricht"]);
}
//Wenn alles korrekt eingegeben wurde, wird die Mail nun erst formatiert und dann verschickt
if(isset($_POST["send"]) && is_array($_POST["send"])) {
if ($i == "11") {
$autor = $_POST["send"]["autor"];
if ($umbruch == "no") {
$texto = $_POST["send"]["nachricht"] ;
}
else { $texto = wordwrap( $_POST["send"]["nachricht"], $umbruch ); }
$_POST["text"] = $_POST["send"]["autor"]." mit der Mail Adresse: ".$_POST["send"]["mail"]." hat ihnen folgende Nachricht gesendet: \n \n $texto";
$fautor = "
Ihre Mail wurde versendet!
";
$fbetreff = "";
$fmail = "";
$fnachricht = "";
// Und ab dafür... je nachdem mit oder ohne additional_parameters
if(empty($add)) {
$addp = "";
if (@mail($adresse, $_POST['send']['betreff'], $_POST['text'], "From: \"$autor\" <$from>")) {
$fautor = "
Ihre Mail wurde versendet!
";
unset($sautor);
unset($sbetreff);
unset($smail);
unset($snachricht);
} else {
$fautor = "
Fehler! Mail konnte nicht gesendet werden
"; }
} else {
if (@mail($adresse, $_POST['send']['betreff'], $_POST['text'], "From: \"$autor\" <$from>", "-f $add")) {
$fautor = "
Ihre Mail wurde versendet!
";
unset($sautor);
unset($sbetreff);
unset($smail);
unset($snachricht);
}
else {
$fautor = "
Fehler! Mail konnte nicht gesendet werden
"; }
}
}
}
// Hier kommt nun das eigentliche Formular in HTML + CSS
?>