2012-05-14 8 views

Antwort

11

Nun mail() gibt einfach einen booleschen Wert zurück, je nachdem, ob die Mail erfolgreich zur Zustellung angenommen wurde. Von php.net Website:

Gibt TRUE zurück, wenn die E-Mail erfolgreich für die Lieferung akzeptiert wurde, FALSE anders.

Es ist wichtig zu beachten, dass, nur weil die Mail für Lieferung angenommen wurde, es bedeutet nicht, dass die E-Mail tatsächlich die beabsichtigte Ziel erreichen wird.

So können Sie testen, ob es "gesendet" wurde, aber prüfen, ob es geliefert wurde, ist eine andere Geschichte.

+0

mail() liefert true doesn Ich meine, die E-Mail wird erfolgreich zugestellt. Sie können nach einigen Minuten eine Fehlermeldung "Mail Delivery Failure" vom Server erhalten, die die E-Mail empfängt (zB keinen solchen Benutzernamen) – jondinham

+9

Ich denke, das habe ich gesagt ?! –

+0

oh ja, du hast Recht :) +1 – jondinham

2

aus der Dokumentation.

„Gibt TRUE zurück, wenn die E-Mail erfolgreich für die Lieferung akzeptiert wurde, FALSE sonst

Es ist wichtig, dass nur zu beachten, da die E-Mail für die Lieferung angenommen wurde es bedeutet NICHT, dass die Post tatsächlich das beabsichtigte Ziel erreicht. "

2

Von http://php.net/mail

Returns TRUE if the mail was successfully accepted for delivery, FALSE otherwise. 
0

Die mail() -Funktion allein benachrichtigt Sie nur, dass die "E-Mail", die Sie eingerichtet haben, legitim ist und wird mir Ihren E-Mail-Server senden.

Sie müssen separat überprüfen, ob die E-Mail-Adresse legitim ist. Ein guter Artikel kann gefunden werden here

Wenn diese beiden Methoden für Sie nicht gut funktionieren, können Sie einige "Spam" Ansatz verwenden Bilder und Ihre Server-Protokolldateien verwenden.

9

Per Ben antworten Sie können erfolgreich Anlieferung als unten

$result = mail('[email protected]', 'Test Subject', $message); 
if(!$result) { 
    echo "Error"; 
} else { 
    echo "Success"; 
} 

Für besseres Ergebnis per E-Mail überprüfen Sie PHPMailer verwenden. Klicken Sie auf den Link unten für eine detaillierte Dokumentation von PHPMailer.

http://phpmailer.worxware.com/index.php?pg=tutorial

if(!$mail->Send()) { 
    echo 'Message was not sent.'; 
    echo 'Mailer error: ' . $mail->ErrorInfo; 
} else { 
    echo 'Message has been sent.'; 
} 
+0

Danke für den Link Chauhan. – Sunny

-3

können Sie $_SERVER['REMOTE_ADDR'] in PHP des Benutzers Remote-IP-Adresse zu erhalten.

Verwendung wie folgt:

<?php 

    $ip = $_SERVER['REMOTE_ADDR']; 
    echo "User's IP address is: ".$ip; 

?> 
Verwandte Themen