mail() funktioniert nicht
Susa
- php
Hallo,
ich bekomme die php-funktion mail nicht zum laufen.
<?php
$erg = mail ( "susa@gmx.de" , "SubjectTest", "The message" );
echo "<br>Mail Erg=".$erg;
?>
Das ganz läuft unter Windows (vista).
Ein sendmail ist installiert. Es läuft problemlos von der Kommandozeile.
php.ini habe ich wie folgt konfiguriert. (Auszug aus phpinfo() )
sendmail_from absender@googlemail.com
sendmail_path C:/bin/TYPO3_4.1.6/sendmail/sendmail.exe -t
SMTP localhost
smtp_port 25
Wenn ich im Taskmanager nachsehe, wird sendmail aufgerufen, aber hängt einfach ohne ein Ergebnis (oer E-Mail) abzuliefern.
wer kann mir helfen?
Susa
Hallo.
ich bekomme die php-funktion mail nicht zum laufen.
[...]
wer kann mir helfen?
Die Fehlermeldung seitens PHP vielleicht.
MfG, at
Hallo.
ich bekomme die php-funktion mail nicht zum laufen.
[...]
wer kann mir helfen?Die Fehlermeldung seitens PHP vielleicht.
MfG, at
Hallo, ich bekomme keine PHP Fehlermeldung.
Hallo
ich bekomme die php-funktion mail nicht zum laufen.
[...]
wer kann mir helfen?Die Fehlermeldung seitens PHP vielleicht.
MfG, atHallo, ich bekomme keine PHP Fehlermeldung.
Hast du die Einstellung für Fehlermeldungen auch "scharf" gestellt? Notiere folgendes am Anfang eines Skripts, das selbst aufgerufen wird.
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
// saemtlicher weiterer Code
?>
Nun werden erstmal alle Fehler und Warnungen, die der PHP-Parser findet, ausgegeben. Bei mail hilft dir das allerdings nicht weiter. Diese Funktion gibt aber im Fehlerfall false zurück. Und genau darauf kannst du prüfen, um herauszufinden, ob die Funktion ihren Job, der darin besteht, die Email an den in der php.ini genannten Mailserver zu übergeben, erledigen konnte.
$mail = mail($to,$subject,$body,$header);
if ($mail===false)
{
echo "<p>Mail wurde nicht übergeben.</p>";
}
else
{
echo "<p>Mail wurde übergeben.</p>";
}
Tschö, Auge
Danke erst mal,
ich bekomme die php-funktion mail nicht zum laufen.
[...]
Hast du die Einstellung für Fehlermeldungen auch "scharf" gestellt?
ja.
Das Verhalten ist das folgende. Wenn ich das script aufrufe, erscheint nichts im browser (minutenlang). Im Taskmanager sehe ich, dass sendmail aufgerufen wurde. Wenn ich im Taskmanager sendmail kille, wird von der mail funktion true zurück gegeben.
sendmail funktioniert perfekt von der Kommandozeile.
Ich verwende den (fake-)sendmail (http://www.glob.com.au/sendmail/) der dachte ich extra für sowas gemacht wurde.
nochmal mein script
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
$erg = mail ( "hugo@gmx.de" , "SubjectTest", "Themessge" );
if ($erg===false)
{
echo "<p>Mail wurde nicht übergeben.</p>";
}
else
{
echo "<p>Mail wurde übergeben.</p>";
}
?>
Hallo
Das Verhalten ist das folgende. Wenn ich das script aufrufe, erscheint nichts im browser (minutenlang). Im Taskmanager sehe ich, dass sendmail aufgerufen wurde. Wenn ich im Taskmanager sendmail kille, wird von der mail funktion true zurück gegeben.
Das heißt, das PHP mit der Funktion mail
die Email an sendmail übergeben konnte. Seine Aufgabe hat mail
somit erledigt. Der Fehler liegt offensichtlich bei deinem Mailserver. _Da_ kann ich dir allerdings nicht weiterhelfen.
Tschö, Auge
Hellihello
http://www.typo3.net/forum/list/list_post//41174/?page=2#pid189826
im netz gibts einiges dazu. Es liegt ja wohl nicht an der Mail-Funktion von PHP sondern am Kontakt zu deinem Mail/SMTP-Server.
Dank und Gruß,