Das alte Problem: \"mail()\"
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
administrator
austauschen
befehl
betreff
code
dank
direkt kontakt
dutzend
eintragen
email
fehlgeschlagen code
firma
grund
machen
nachricht
ordner
server
streit
versenden
zeile
-
Hallo an alle,
ich gehöre jetzt auch zu denjenigen die ein Problem mit mail() haben. Allerdings geht es bei mir NICHT um lima-city.
Es geht um einen Reseller Webspace den meine Firma ihr Eigen nennt.
Ich hatte heute ein gespräch mit denen und die haben mir gesagt das ich zum versenden von Emails einen Smarthost und eine Gültige E-Mail adresse eintragen muss, und das ins php-Script?????
Der Server ist Linux (welches genau weis ich nicht). Nach dem \"mein\" Script nicht ging hab ich mal dieses hier ausprobiert:
<?php // Die Nachricht $nachricht = \"Zeile 1\\Zeile 2\\Zeile 3\"; // Falls eine Zeile der Nachricht mehr als 70 Zeichen enthälten könnte, // sollte wordwrap() benutzt werden $nachricht = wordwrap($nachricht, 70); // Send $ret = mail(\'e.mail@firma.at\', \'Mein Betreff\', $nachricht); if ($ret == 1){ echo \"E-mail erfolgreich gesendet!\"; } else { echo \"E-mail senden fehlgeschlagen!\"; } ?>
wie man sieht keine hexerei. immerhin steht immer \"E-mail erfolgreich gesendet!\" da --> da scheint wohl irgendwo bei unserem Anbiter im Spam-Ordner zu laden :(
in der php.ini steht nicht viel drin außer:
sendmail_path = /usr/sbin/sendmail -t -i
Beim rest steht ja explizit da \"; For Win32 only.\"
nichtsdestrotrotz ist beim Smarthost schon standardmäßig etwas eingetragen, weiter hab ichs mit
SMTP = 127.0.0.1
und
SMTP = localhost
da der support mir gesagt hat das da der locahost drin stehen soll.
nun nachdem nichts davon funktioniert hat wende ich mich an euch.
Wer Weiß Rat?
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hi,
bei Internet-Providern ist es meist so, dass local ein eMail Server eingerichtet ist, um eMails zu versenden (z.B. Postfix). Aus diesem Grund mußt du auch als SMTP-Server den localhost angeben.
Der PHP Befehl mail() liefert dabei die Mail nur lokal an diesen Server ab - funktioniert dies liefert mail() ein true zurück für Mail versendet. Der lokale Mailserver versucht nun die eingelieferte Mail loszuwerden, indem es über den Domainnamen den Empfänger-eMail-Server ermittelt und kontaktiert. Nimmt dieser Empfänger-eMail-Server (aus welchen Gründen auch immer) die Mail nicht an, wird diese zurück gebouncet und landet meist beim Administrator deines Servers im eMail Postfach.
Man selber merkt dann natürlich nichts davon im PHP Script.
Aus diesem Grund verwende ich eine eMail Klasse, die direkt kontakt mit dem Epfänger-Mail-Server aufnimmt und mir Fehlermeldungen usw. zurück liefert. So kann ich per PHP Script zumindest nachvollziehen, warum die Mail nicht angenommen wurde.
Die eMail Klasse findet man unter www.xpertmailer.com
Einfach downloaden, entpacken und mail() gegen folgende Zeilen austauschen:
[code]
[/code]
Hoffe konnte ein wenig helfen...
Grüßle
Edit: das Forum macht wiedermal Mist aus dem Quelltext... das zweite Kästchen unter http://www.xpertmailer.com/examples.php ist der Quelltext
Beitrag geändert: 17.12.2007 13:58:13 von scout -
hi scout,
erstmal danke für die antwort, doch leider hatte ich gehofft das mir geraten wird mail-funktionen umzuschreiben, da es sich um dutzende mail-formulare auf dutzenden webseiten befinden die ich möglicherweise nicht wieder finde :(
danke trotzdem für die antworte, werd mich mal mim isp streiten damit die das abklären warum und wieso es nicht geht -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage