Hallo, ich habe ein Kontakt Formular gefunden, nur das funktioniert i-wie nicht. findet jemand den Fehler?
Die E-Mail Adresse habe ich richtig eingegeben.
PHP-Code:
<title>Kontakt</title>
<?php
/*******************************************/
/* formmailer.php */
/* */
/* FORMMAILER mit Reloadsperre */
/* */
/* von Steffen Kamper */
/* erstellt für das Traumprojekt-Forum */
/* */
/*******************************************/
//erstmal Variablen definieren
$pagename="kontakt.php";
$error=$name=$email=$message="";
// an wen geht die Mail ?
$empfaenger="hierkommt@meineemail.rein";
if(isset($_POST['domail'])) {
// es wurde abschicken gedrückt, also erst mal die Felder holen
$name=get_magic_quotes_gpc() ? stripslashes($_POST['name']) : $_POST['name'];
$email=get_magic_quotes_gpc() ? stripslashes($_POST['email']) : $_POST['email'];
//Form-Attacken verhindern (suche nach \r\n oder \n)
if(strpos($name,"\r\n")>0 || strpos($name,"\n")>0) {
DebugAttack(substr($name,strpos($name,"\r\n")));
$name="";
}
if(strpos($email,"\r\n")>0 || strpos($email,"\n")>0) {
DebugAttack(substr($email,strpos($email,"\r\n")));
$email="";
}
//Message setzt sich aus allen Eingaben zusammen
$message=get_magic_quotes_gpc() ? stripslashes($_POST['message']) : $_POST['message'];
// wir setzen einen Flag, um Fehler zu registrieren
$ok=true;
//jetzt werden die Felder überprüft
if (strlen($name)<3) // der Name muss mindestens 3 Zeichen haben
{
$err[0]=true; //Fehler merken
$ok=false; //Fehlerflag setzen
$error.='Bitte geben Sie Ihren Namen an. (mindestens 3 Zeichen)<br>'; // Fehlertext
}
if ( (!(eregi('^[a-z0-9_\.-]+@[a-z0-9_-]+\.[a-z0-9_\.-]+$',$email))) && (strlen($email)>0) || $email=="")
{
//email-Adresse ist ungültig
$err[1]=true;
$ok=false;
$error.='Bitte kontrollieren Sie die angegebene E-Mail-Adresse.<br>';
}
if (strlen($message)<10) // die Message muss mindestens 10 Zeichen haben
{
$err[2]=true; //Fehler merken
$ok=false; //Fehlerflag setzen
$error.='Bitte geben Sie eine Message von mindestens 10 Zeichen ein.<br>'; // Fehlertext
}
// ist alles ok ? dann senden
if($ok)
{
//Mail komponieren
$mailheader="From: formular@domain.de\r\nX-Mailer: PHP/" . phpversion(). "\r\nX-Sender-IP: ".$_SERVER['REMOTE_ADDR']."\r\nContent-Type: text/html; charset=ISO-8859-1;";
$message=nl2br("Name: $name\nEmail: <a href=\"mailto:$email\">$email</a>\n<hr>$message");
$subject="Webseiten-Nachricht vom ".date("d.m.Y");
if (@mail($empfaenger, $subject, $message, $mailheader)) {
//Alles ok, Seite neuladen (Reloadsperre)
header("Location:$pagename?success");
//falls kein Header gesendet werden kann, dann mit javascript
//echo '<script type="text/javascript">document.location.href="'.$pagename.'?success"</script>';
exit;
} else {
$error='<h3>Fehler beim Mailen aufgetreten</h3>';
}
} else {
// Fehler ausgeben
$error='<h3>Fehler bei der Eingabe</h3><p class="error">'.$error.'</p>';
}
}
?>
Kommentar