PHP mail() funktioniert nicht

Tab

unlimited
ID: 374854
L
26 Juni 2007
900
71
Hallo liebe Kollegen,

ich bin gerade ein bisschen verzweifelt. Meine mail() funktion geht nicht.

PHP:
$subject = "Seitenname - Verifitierung";
        $msg .= "Hallo ".$benutzername.",\n\n";
        $msg .= "Um Ihren Account zu verifizieren, müssen Sie folgendem Link folgen:\n";
        $msg .= "blabla";
        $headers = "From: [email protected]";
        mail($email, $subject,$msg, $headers);

Jedoch wird keine Email versendet. Alle Werte sind vergeben. $email enthält die Emailadresse des Empfängers.

Liebe Grüße
 
Die Mail wird wohl eher geblockt werden. Eine Auswertung, ob die Mail versandt wurde oder nicht, findet ja nicht mal statt.
 
Achso meint Ihr das. Ein if ist schon vorhanden. Die Mail wird versendet, wenn alle Daten richtig eingetragen wurden und sie noch nicht vorhanden sind.

Da die Mailfunktion nicht funktioniert, habe ich nur diesen Bereich hier veröffentlicht.

Da muss irgendwo der Fehler liegen, da dort alle Werte ankommen.

Liebe grüße
 
Von wo wird verschickt? Einem "echten" Server, oder was "Privates" zu Hause. Wenn es "zu Hause ist", dann muss per SMTP-Auth verschickt werden über einen "echten" Anbieter. DynIP-Zugänge dürfen kaum Mails verschicken. Ansonsten kann es natürlich sein, dass der Anbieter blacklisted ist.
Oder es kann sogar ein Fehler in der Server-Konfiguration sein.
 
Kurze Frage am Rande, weil ich da einen Absender von GMX.DE sehe. Ich nehme mal an, dass der versendende Server NICHT zu GMX gehört...

Der empfangende Server nimmt die Mail entgegen, und vergleicht erstmal die IP des Versenders mit der IP des zu GMX.DE gehörenden SMTP-Servers. Stimmen diese nicht überein, ist diese EMail als potentieller Spam einzuordnen, und landet entweder im Spamordner oder wird gar ganz herausgefiltert.

Wenn, dann nutz eine EMail-Adresse eines auf DIESEM Server konfigurierten Email-Servers.

Andernfalls schau Dir mal diverse PHP-SMTP-Klassen an, diese gestatten es Dir Dich mit dem Script an einem SMTP-Server zu authentifizieren und die Mail über diesen zu versenden. Dazu werden dann aber im Script die realen Zugangsdaten Deines GMX-Kontos benötigt (wenn es denn GMX sein soll).

Gruß
 
Doch stand das mal als alternative eine php ini erstellen kann. Doch wenn die dort ein Script veröffentlichen, dann muss doch auch eig. funktionieren. Mit dem erstellen von php ini habe ich keine Ahnung...

Liebe Grüße
 
Trag doch mal die E-Mail-Adresse, die bei dem Anbieter im Kundencenter hinterlegt ist, ein, anstatt die gmx-Adresse.

Wenn die dort schon drinsteht, dann frag bei denen nach.
 
Ah endlich, es hat geklappt.
Einen kleinen Fehler habe ich dennoch...

PHP:
include('inc/db_connect.php');

$value = $_GET['value'];

if (empty($value)) {
    echo "<b>Es ist ein Fehler aufgetreten!</b>";
} else {
    $update = "UPDATE kundendaten SET verify = '1' WHERE time = '.$value.'";
    mysql_query($update)or die(mysql_error());
}

Hierbei wird der Wert von verify in der DB nicht geändert.

Liebe Grüße
 
Das Syntax Highlighting zeigt den Fehler hier ganz gut. Da fehlen zwei Anführungszeichen rund um .$value. .