Hallo in die Runde,
leide finde ich den Grund nicht, warum mein php-Code nicht funktioniert.
Kurz zum Sachverhalt: Ich möchte einfach in einem Kontaktformular zur Bestellung eines Newsletters die angegebene Mail prüfen (Syntax, Domain, etc) Das dürfte eigentlich für jeden (ausser mir) kein Problem sein, es gibt ja auch haufenweise Beiträge dazu. Ich habe hier im Forum schon mehere Funktionen gefunden und alle ausprobiert.
Leider geben alle Funktionen immer den Wert "falsch" aus, auch wenn die eMail richtig ist. An der Funktion selbst kann es also nicht liegen. Ich vermute mal, dass es daran liegt, dass die Funktion die eMail im Quellocode der Ursprungsseite nicht findet, und somit logischer Weise immer sagt: "falsch"
Vieleich ist es möglich, das mir jemand weiter hilft?
Der Code des Formulars:
Und dazu der php Code, der auf einer weiteren Seite steht:
Dem php-Code schließt sich noch weiterer HTML-Code an, in dem dann über den echo Befehl die ermittelten Werte ausgegeben werden.
Für Eure Hilfe wäre ich ungemein Dankbar
Herzliche Grüße
Basteidel
leide finde ich den Grund nicht, warum mein php-Code nicht funktioniert.
Kurz zum Sachverhalt: Ich möchte einfach in einem Kontaktformular zur Bestellung eines Newsletters die angegebene Mail prüfen (Syntax, Domain, etc) Das dürfte eigentlich für jeden (ausser mir) kein Problem sein, es gibt ja auch haufenweise Beiträge dazu. Ich habe hier im Forum schon mehere Funktionen gefunden und alle ausprobiert.
Leider geben alle Funktionen immer den Wert "falsch" aus, auch wenn die eMail richtig ist. An der Funktion selbst kann es also nicht liegen. Ich vermute mal, dass es daran liegt, dass die Funktion die eMail im Quellocode der Ursprungsseite nicht findet, und somit logischer Weise immer sagt: "falsch"
Vieleich ist es möglich, das mir jemand weiter hilft?
Der Code des Formulars:
HTML:
<form action="../ext/newsletter.php3" method="post" name="feedback" onSubmit="chkFormular()">
<font size="2"><b>Auch Sie möchten den kostenlosen Newsletter erhalten?</b><br>
<br>
Bitte geben Sie hier Ihre Postleitzahl ein:</font><br>
<br>
<input type="Text" name="PLZ" size="10" maxlength="5" style="font-size: 10pt; font-family: Arial; font-style:
normal; font-weight: normal; color: #fe8625; border-style: groove; float: none; background-color: #ffffff;"><br>
<br>
<font size="2">Bitte geben Sie hier Ihre eMail-Adresse ein:</font><br>
<br>
<input type="Text" name="eMail" size="25" maxlength="50" style="font-size: 10pt; font-family: Arial;
font-style: normal; font-weight: normal; color: #fe8625; border-style: groove; float: none; background-color: #ffffff;">
<p>
<button name="submit" type="submit"><font class="text4"><b>JA!</b></font></button>
</form>
Und dazu der php Code, der auf einer weiteren Seite steht:
PHP:
<?
$eMail = $_POST["eMail"];
function checkEmail($eMail) {
// Syntax prüfen
if(preg_match("/^( [a-zA-Z0-9] )+( [a-zA-Z0-9\._-] )*@( [a-zA-Z0-9_-] )+( [a-zA-Z0-9\._-] +)+$/" , $eMail)) {
// Domain prüfen
list($username,$domain)=split('@',$eMail);
if(!checkdnsrr($domain, 'MX')) {
return false;
}
if(!fsockopen($domain,25,$errno,$errstr,30)) {
return false;
}
return true;
}
return false;
}
if($eMail == "")
{ // Prüfen, ob das Feld eMail gefüllt ist
$e_text1 = "SORRY!";
$e_text2 = "Ohne eMail-Adresse geht's leider nicht!";
}
else
{
if(checkEmail($eMail) == false)
{// Prüfen, ob die eMail die richtige Syntax hat
$e_text1 = "SORRY!";
$e_text2 = "Die angegebene eMail ist nicht gültig!";
}
else
{// Das Ergebnis der Prüfung der eMail ist positiv
$e_text1 = "VIELEN DANK!";
$e_text2 = "Bald bekommen auch Sie den Newsletter.";
$mailto = "mail@meineadresse.de";
$from = $_POST["eMail"];
$from2 = $_POST["PLZ"];
$message = 'Die neue eMail Adresse für den Newsletter lautet: '.$_POST["eMail"].'
Die eingegebene PLZ lautet: '.$_POST["PLZ"].'';
mail( "$mailto", "Newsletter-Bestellung", "$message", "From:$mailto\nCC:$cc\nBCC:$bcc" );
}
}
?>
Dem php-Code schließt sich noch weiterer HTML-Code an, in dem dann über den echo Befehl die ermittelten Werte ausgegeben werden.
Für Eure Hilfe wäre ich ungemein Dankbar
Herzliche Grüße
Basteidel