ChatKult Communitypowered by Next 1.0.12
ChatKult FORUM · Next 1.0.12
Forenübersicht » [ Technik & Multimedia ] » Mal wieder PHP - Email-Check

Mal wieder PHP - Email-Check

Hiho Leute -

ich lasse Formulardaten per mail() verschicken. Bis jetzt hab%27 ich %27s mir immer einfach gemacht - gecheckt, ob die Felder ordentlich ausgefüllt wurden, und dann einfach behauptet "Danke, ja, deine Daten wurden verschickt". Damit komm ich jetzt aber nicht mehr durch :-p Der, für den ich die Seite mache, hat mir ZWEI Antwortmöglichkeiten zugeschickt - ein "Dankeschön, ja, alles wunderbar mit der Mail." und ein "Nee du, da gab%27s Probleme, versuch%27s ein wenig später noch mal, sei so lieb, ja?" blabla. Okay, ich soll also einen Check einbauen, ob die Mail wirklich raus ging oder nicht.

Fragö nun: wie geht das? Ich bin heute Abend irgendwie ein Google-Dau, ich bekomme immer nur Tips, wie ich das Format einer Mail-Adresse checke, aber nicht zu dem, was ich will :_p

Danke schon einmal, ihr Gurus!
Hä, also ne Meldung, dass die Mail wirklich rausging? Oder nur nen Check, dass bestimmte Felder nicht ausgefüllt wurden?
Also, im Moment lass ich erstmal Checks laufen, ob die Felder ausgefüllt wurden und mit richtigem Inhalt - also

if (strlen($Name) < 1) { echo "bla"; }
elseif (strlen($Telefon) < 1) { echo "bla"; }
usw.

und dann, wenn alle Felder ok sind, sag ich einfach

else { echo "Supi, deine Daten sind raus"; }

So, jetzt hat mir der Herr, der mir sagt, was er gerne auf seiner Homepage hätte, folgende Texte zugeschickt:

"Vielen Dank für Ihre Nachricht. Wir werden uns umgehend bei Ihnen melden."

und

"Die Übertragung Ihrer Nachricht hat leider nicht funktioniert. Bitte versuchen Sie es zu einem späteren Zeitpunkt noch einmal oder senden Sie uns eine Email an blablabla."

Das weist mich nun darauf hin, dass ich checken soll, ob die Mail wirklich rausgeschickt wurde oder ob nicht. Und hier wüsste ich gern, wie ich das mache :-)
Mir fällt da leider nichts ein, da ich mir wohl nie Gedanken drüber gemacht hatte.

Aber vielleicht hat die von PHPMailer / Sourceforge so eine ähnliche Methode in den Scripten eingebaut, was aber sehr zeitaufwendig (oder -wändig?) mit Rumsuchen ist. gg
die einzig (mit vertretbarem Aufwand) machbare Möglichkeit ist:

$result = mail(...);

Danach frag $result ab. Ist es %27true%27 dann wurde die Mail verschickt ansonsten gabs ein Problem.

Aber dann wurde immer noch nicht abgefragt ob die Mail auch wirklich den richtigen Weg gelaufen ist. Das hängt davon ab wie die Mailserver wo konfiguriert sind. Du kannst nur abfragen ob PHP die Mail sauber verschickt hat.

P.S. das o.g. ist blanke Theorie. Ich hab das noch nie so detailiert getestet. s-)
So, danke, ihr beiden :-) Hab aus deinem Hinweis was gebastelt, Echo - ob%27s funktionieren wird, weiß ich nicht, ich wüsste nicht, wie ich einen Fehler beim Verschicken provozieren könnte, um%27s zu testen ;-) Abwarten und Tee trinken, wird schon schiefgehen ... :-p
evtl. mal ne falsche Mail-Addi angeben? Für weitere Tests braucht man dann kompletten Zugriff auf den Server um entsprechende Dienste runterzufahren.

Sollte mein Chef mal keine Extrawünsche kurz vor Feierabend haben könnte ich sowas auf unserem Server ja mal probieren. Aber so wie es im Moment ist sieht das da wohl schlecht aus.
:-0 Hab%27 dich glatt übersehen, Echo - vielen herzlichen Dank für deine Hilfsbereitschaft! Aber brauchst dich nicht so sehr reinzuhängen, es sei denn, du tust es für dich selbst :-) Bin mit dem Herrn Auftraggeber so verblieben, dass ihm die Bestätigung "Daten sind ordentlich eingegeben und unterwegs zu uns" reicht. Ich hab mein Script zwar so gelassen, wie%27s ist, aber wenn es nicht anspringt bei einem Fehler, dann ist%27s nicht tragisch ;-)

Gute Nacht
Abalone