[PHP] Nachteile der Funktion mail()

Retep

Well-known member
ID: 102024
L
29 April 2006
378
4
Hallo zusammen,

hat jemand von Euch Erfahrung mit der mail()-Funktion in PHP?

Ich möchte sie verwenden, um nach Registrierung auf meiner Seite einem User den Aktivierungslink zu schicken.

Ich habe bemerkt, dass die Mails oft im Spam-Ordner landen. Damit könnte ich irgendwie noch leben, solange sie überhaupt ankommen. Kann es auch sonstige Probleme geben, meint ihr, dass die Funktion ausgereift genug für Anwendung ist?

Vielen Dank im Voraus.
 
.

Ich möchte noch anmerken, dass mich eigentlich nur die Sicherheit/Verlässlichkeit der Funktion interessiert, mehr Funktionalität brauche ich nicht.
 
Die Funktion ist auf jeden Fall ausgereift genug für einen Aktivierungslink. Und die Einsortierung als Spam kann man mit vernünftigen Header-Angaben deutlich reduzieren.

Ein Nachteil ist auf jeden Fall, dass die Funktion nicht auf jedem Server unbedingt funktioniert.

Wenn du mehr Komfort willst/brauchst als mail() dir bietet, schau dir mal das hier an: https://phpmailer.sourceforge.net
 
.

Die Funktion ist auf jeden Fall ausgereift genug für einen Aktivierungslink. Und die Einsortierung als Spam kann man mit vernünftigen Header-Angaben deutlich reduzieren.

Das ist auf jeden Fall beruhigend zu lesen (bei mir funktionierte sie in Tests).

Was wären "vernünftige Header-Angaben"?
 
Bei mir funktioniert die Funktion mail() lokal auf meinem Entwicklungsrechner nicht. Dort ist kein Mailserver installiert. Ansonsten hatte ich mit dieser Funktion bis jetzt noch keine Probleme - im Sinne von "es geht nicht". Auch auf Windows-Server mit IIS ging die Funktion.

Was mit dieser Funktion ein Problem sein kann, ist die Sicherheit. Wenn man nicht wirklich gut aufpasst, dann schafft man damit Mail-Formulare, über die Spam versendet werden kann. Deswegen wird oft über mangelnde Sicherheit bei mail() berichtet. Das hat aber absolut nichts mit der Verlässlichkeit zu tun.
 
.

Nachdem ich bei meiner *@hotmail.com diese E-Mail-Adresse als "not junk" markiert hatte, funktionieren Tests auch weiterhin. Bei der *@t-online.de Adresse hat es zweimal funktioniert und seitdem kommt nichts mehr an. Ich nehme mal an, das wird irgendwie automatisch fälschlicherweise als Spam erkannt und gelöscht?

Edit: Eine der Mails an die t-online.de-Adresse ist nun mit über einer Stunde Verspätung angekommen.
 
Zuletzt bearbeitet:
Das würde mich auch interessieren, meine mail() kommen überall an, außer bei AOL-Accounts :oops:

AOL verwirft jegliche E-Mails, die nicht per SMTP-Authentifizierung verschickt wurden. mail() macht keine SMTP-Auth. Deswegen kommen deine E-Mails auch nicht an.

Nimm den phpmailer (wahnsinn hat den Link gepostet). Mit dieser Klasse kann man SMTP-Auth machen und deine E-Mails kommen erheblich weiter.
 
.

Ich möchte nicht auf AOL-User verzichten. Allgemein liebe ich Funktionen, die nicht überall funktionieren. Das könnte man sich auch ganz sparen. :roll:

Werde mich dann morgen mit phpmailer auseinandersetzen, ich danke Euch für den Link.
 
Allgemein liebe ich Funktionen, die nicht überall funktionieren. Das könnte man sich auch ganz sparen. :roll:

Naja, funktionieren tut es ja. Nur werden leider Spam-Mails oftmals auch ohne SMTP-Auth verschickt und dadurch rutscht deine E-Mail ebenfalls in den Filter. Dafür kann die Funktion mail() an sich nichts.

Weißt was viel lustiger ist? Wenn AOL-User von dir eine E-Mail anfordern (sei es Rechnung, Newsletter o.ä.) und dann die E-Mail als Spam markieren, sodass die die Domain dann auf der Blacklist bei AOL landet (wenn genug Meldungen vorliegen).