Hat es drauf
Hi ich habe mal wieder ein dummes Formular Problem und zwar folgendes:
Ich habe folgendes Htmlgerüst dafür:
welches ich mit Hilfe von include in eine bestehende Seite einbaue...
So und das hier ist der passende php Code dafür:
und folgende Fehlermeldung wird mir ausgegeben obwohl meine E-Mailadresse zu 100% richtig ist und auch wenn ich oben in der php Datei eine richtige eingebe wird es nicht akzeptiert....
und auf Line 20/21 steht folgendes in der php datei:
Habt Ihr eine Idee?
Ich habe folgendes Htmlgerüst dafür:
HTML:
<form action="versenden.php" method="post">
<fieldset>
<legend>Kontaktformular</legend>
<?PHP echo $errorMessage; ?>
<p>
<label for="name">Name:</label><br />
<input class="k_eingabe" size="30" id="name" name="name" />
</p>
<br />
<p>
<label for="email">E-Mail:*</label><br />
<input class="k_eingabe" size="30" id="email" name="email" />
</p>
<br />
<p>
<label for="betreff">Betreff:*</label><br />
<input class="k_eingabe" size="30" id="betreff" name="betreff" />
</p>
<br />
<p>
<label for="message" class="title">Ihre Nachricht:*</label><br />
<textarea class="k_eingabe" cols="50" rows="8" id="message" name="message"></textarea>
</p>
<br />
<p>
<input class="button" id="submit" name="submit" type="submit" value="Absenden" />
Mit * markierte Felder müssen ausgefüllt werden.
</p>
</fieldset>
</form>
welches ich mit Hilfe von include in eine bestehende Seite einbaue...
So und das hier ist der passende php Code dafür:
PHP:
<?
// Wir legen eine Variable mit deiner E-Mail
$ihremail = "testo@test.de";
// Lege nun eine leere Variable für Fehler an (wird später benötigt)
$error = "";
// Inhalt aus den Formularen übertragen "Name"
$name = $_POST['name'];
// Inhalt aus den Formularen übertragen "Email"
$email = $_POST['email'];
// Inhalt aus den Formularen übertragen "Betreff"
$betreff = $_POST['betreff'];
// Inhalt aus den Formularen übertragen "Nachricht"
$text = $_POST['message']; // Text
$Submit = $_POST['submit']; // Sende Button
// Wir bauen eine Funktion die soll die Absender E-Mail überprüfen, ob die gültig ist
// das machen wir mit eregi() wir prüfen nicht nur ob "@" und "." vorhanden ist sondern auch
// 2 bustaben vor "@" und nach dem "@" da sind.
function mailcheck($mail) {
$mail = eregi("^[a-z0-9]+([-_.]?[a-z0-9])
+@[a-z0-9]+([-_.]?[a-z0-9])+.[a-z]{2,4}", $mail); // Hier läuft das ab
return $mail; // wir geben die E-Mail zurück
}
// Jetzt prüfen wir ob die Felder ausgefüllt wurden mit if(empty)
//wenn das feld "Name" nicht ausgefüllt wurde geben wir der leeren $error Inhalt
// Also die Ausgabe "Sie haben keinen Namen angegeben."
if(empty($name)) $error .= "<li>Sie haben keinen Namen angegeben.</li>";
// das gleiche mit "Email"
if(empty($email)) $error .= "<li>Sie haben keine E-Mail angegeben.</li>";
// hier setzen wir unsere oben gebaute Funktion ein wenn E-Mail nicht stimmt dann fehlerausgabe
if(!mailcheck($email)) $error .= "<li>Ihre E-Mail ist ungültig</li>";
// für das Feld "Betreff"
if(empty($betreff)) $error .= "<li>Es wurde kein Betreff ausgewählt.</li>";
// für Nachricht
if(empty($text)) $error .= "<li>Sie haben kein Text angegeben.</li>";
// if(empty($error)) d.h wenn $error leer ist also alles normal ausgefüllt wurde und der Button "Absenden" angeklickt wurde
// Dann springt das runter und wir holen uns die übertragene Daten
if(empty($error) && $Submit == "Absenden" ) {
// wir machen das ganze in eine Variable "$nachricht"
$nachricht = "Email von ".$name."nn".
"Name: ".$name."n".
"Email: ".$email."nn".
"Betreff: ".$betreff."n".
"Nachricht: ".$text;
$subject = "$betreff";
$nachricht1 = $email . "nn" . $nachricht;
// hier setzen wir unsere mail() funktion ein das muss genau so ausehen
// mail($anwem,$subject,$den den ganzen inhalt, unbedingt "FROM:" also von wem)
mail($ihremail,$subject,$nachricht1,"FROM: $email");
}
// hier fragen wir wieder ein Error ein:
if(empty($error)) {
// wir geben dann hier ein dass alles ok ist
echo "<b>Nachricht wurde erfolgtreich verschickt</b><br>
<ul>
<li>Name: $name</li>
<li>Email: $email</li>
<li>Betreff: $betreff</li>
<li>Nachricht: $text</li>
</ul>";
// Wenn es nicht stimmt
} else {
echo "Folgender Fehler ist aufgetreten<br><p>Ihre Nachricht konnte nicht gesendet werden:<ul>$error</ul></p>";
}
?>
und folgende Fehlermeldung wird mir ausgegeben obwohl meine E-Mailadresse zu 100% richtig ist und auch wenn ich oben in der php Datei eine richtige eingebe wird es nicht akzeptiert....
Deprecated: Function eregi() is deprecated in /Applications/XAMPP/xamppfiles/htdocs/neunzehn91/versenden.php on line 20
Folgender Fehler ist aufgetreten
Ihre Nachricht konnte nicht gesendet werden:
* Ihre E-Mail ist ungültig
und auf Line 20/21 steht folgendes in der php datei:
PHP:
$mail = eregi("^[a-z0-9]+([-_.]?[a-z0-9])
+@[a-z0-9]+([-_.]?[a-z0-9])+.[a-z]{2,4}", $mail);
Habt Ihr eine Idee?