PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks. |
 |
|

15-03-2005, 09:37
|
gelahad
Newbie
|
|
Registriert seit: Jan 2005
Beiträge: 15
|
|
Mailproblem
Hallo Leute,
Also ich habe Folgendes Problem.
Ich betreibe einen Community an der sich Leute registrieren können.
Bei der Registration soll eine E-Mail versendet werden.
Wenn die Leute eine web.de adresse angeben kommt diese auch an.
Bei GMX usern, AOL, T-Online und noch ein par anderen kommt jedoch garkeine E-Mail an (auch nicht im Spam Ordner)
Woran könnte das Liegen?
Hier der Code den ich zum versenden verwende:
PHP-Code:
$mail_absender="Likeflirt Team <info@likeflirt.de>";
$betreff="Re: Registration";
$text="Hallo $name,\nHerzlich Willkommen bei Likeflirt.de\n\nIhre Zugangsdaten lauten:\nBenutzername: usw...";
$to=$name." <".$email.">";
mail($email, $betreff, $text,"To: $to\r\nFrom: $mail_absender\r\nMIME-Version: 1.0\r\n");
Vielen Dank im vorraus,
Gelahad
|

15-03-2005, 09:59
|
hofuwe
Newbie
|
|
Registriert seit: Jul 2004
Ort: Kutenholz
Beiträge: 23
|
|
liegt deine community auf einem server mit dynamischer ip-adresse (foo.dyndns.org)???
aus gründen zur spam-bekämpfung lehnen gerade die von dir genannten adressen mails von dynamischen ip-adressen rigeros ab.
|

15-03-2005, 10:00
|
gelahad
Newbie
|
|
Registriert seit: Jan 2005
Beiträge: 15
|
|
Nein, ist ein Rootserver von Strato mit fester IP
|

15-03-2005, 10:04
|
asp2php
Banned
|
|
Registriert seit: Feb 2004
Beiträge: 11.745
|
|
schon mal mit 'ner andere Sende-Email-Adresse probiert? Es könnte sein, dass deine Mails direkt gelöscht wurden
|

15-03-2005, 10:21
|
gelahad
Newbie
|
|
Registriert seit: Jan 2005
Beiträge: 15
|
|
@asp
Sendemail hab ich schonmal geändert (und eben nochmal getestet)
Geht weiterhin nit
@hofu
So wie ich das rauslese geht es dort nicht um die rootserver sondern um die billigere Variante des Webhostings (Also webspace und Domain... etc)
|

15-03-2005, 10:25
|
gelahad
Newbie
|
|
Registriert seit: Jan 2005
Beiträge: 15
|
|
Ach und nochwas...
Also normal Mails per Software kann ich versenden... Die kommen dann auch bei GMX usw an...
Nur die automatischen Mails, die aus dem PHP Code gesendet werden kommen einfach nicht an...
Demnach nehm ich an, dass es an der Programmierung (dem Header?) liegt...
Nur was fehlt??? Oder ist falsch?
|

15-03-2005, 10:35
|
hofuwe
Newbie
|
|
Registriert seit: Jul 2004
Ort: Kutenholz
Beiträge: 23
|
|
was steht denn in der var $email?
"Anmerkung: Der to-Parameter darf nicht in der Form "irgendwas <irgendwer@example.com>" sein,
da dies von PHP nicht korrekt an den MTA übergeben werden kann."
|

15-03-2005, 10:38
|
hofuwe
Newbie
|
|
Registriert seit: Jul 2004
Ort: Kutenholz
Beiträge: 23
|
|
versuch sonst mal noch einen 5.parameter anzuhängen:
"-finfo@likeflirt.de"
bei mir hat dann auch web.de bzw. gmx.de die mails angenommen
|

15-03-2005, 11:09
|
gelahad
Newbie
|
|
Registriert seit: Jan 2005
Beiträge: 15
|
|
PHP-Code:
$mail_absender="Likeflirt Team <info@likeflirt.de>";
$betreff="Re: Registration";
$text="Hallo $name,\nHerzlich Willkommen bei Likeflirt.de\n\nIhre Zugangsdaten lauten:\nBenutzername:";
$to=$email;
mail($email, $betreff, $text,"To: $to\r\nFrom: $mail_absender\r\nMIME-Version: 1.0\r\n-finfo@likeflirt.de\r\n");
hab das nun darauf abgeändert, jedoch funktioniert es immer noch nicht.
in der $email steht die emfängeradresse (z.B. gelahad@gmx.net)
Bei web.de funktioniert es ja einwandfrei nur wie gesagt bei GMX, Yahoo, AOL und T-Online net
Geändert von gelahad (15-03-2005 um 11:12 Uhr)
|

15-03-2005, 11:32
|
hofuwe
Newbie
|
|
Registriert seit: Jul 2004
Ort: Kutenholz
Beiträge: 23
|
|
das ist kein 5.parameter!
PHP-Code:
mail($email, $betreff, $text,"To: $to\r\nFrom: $mail_absender\r\nMIME-Version:
1.0\r\n-finfo@likeflirt.de\r\n");
so meinte ich das:
PHP-Code:
mail($email, $betreff, $text, "To:$to\r\n From: $mail_absender\r\n",
"-finfo@likeflirt.de");
der 5.parameter ist ein kommandozeilen-parameter der die korrekte From-Adresse angibt,
siehe http://de.php.net/manual/de/function.mail.php
|

15-03-2005, 11:32
|
jahlives
Master  
|
|
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
|
|
PHP-Code:
mail($email, $betreff, $text,"To: $to\r\nFrom: $mail_absender\r\nMIME-Version: 1.0\r\n");
So auf den ersten Blick hast du dich ned an das rfc für mails gehalten. To: From: und MIME-Version: sind HEADER Daten und dorthin gehören sie auch dorthin. Ausserdem verlangt das rfc, dass die letzte Header Zeile mit einem doppelten CRLF (Carriage Return/Line Feed) abgeschlossen wird.
Auch muss die letzte Boundary (letzter Teil der Mail) mit doppelten CRLF beendet werden.
Probiers mal so:
PHP-Code:
$headers = "From: Webmaster<$sender>\r\n";
$headers.= "Reply-To: Info <webmaster@domain.ch>\r\n";
$headers.= "Priority: urgent\r\n";
$headers.= "Precedence: first-class\r\n";
$headers.= "MIME-Version: 1.0\r\n";
$headers.= "Content-Type: multipart/mixed;boundary=\"$boundary\"\r\n";
$headers.= "Content-Transfer-Encoding: 8bit\r\n\r\n";
$nachricht = "--$boundary\r\n";
$nachricht.= "blablabla";
$nachricht.= "--$boundary\r\n\r\n";
[...]
mail ($email, $betreff, $nachricht, $headers,"-f [email]info@webmaster.ch[/email]");
|

15-03-2005, 12:04
|
gelahad
Newbie
|
|
Registriert seit: Jan 2005
Beiträge: 15
|
|
Kleine Frage... was ist denn das?
$boundary???
|

15-03-2005, 12:59
|
jahlives
Master  
|
|
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
|
|
Salut
$boundary brauchst du bei Multipart Mails (z.B. Text mit Bild). Jeder einzelne Part der Mail muss durch eine eindeutige Boundary (welche auch im Header stehen muss) getrennt stehen. Ansonsten hat der Mailserver keinen Schimmer bezüglich der einzelnen Teile der Mail.
Wenn du aber nur eine Textmail verschicken willst (also nur 1 Part), dann kannst du auch auf die boundary verzichten.
In diesem Falle bleibt es aber trotzdem so, dass der letzte Header mit einem doppelten CRLF beendet werden muss, ebenso wie das Ende der Mail.
|

15-03-2005, 13:06
|
gelahad
Newbie
|
|
Registriert seit: Jan 2005
Beiträge: 15
|
|
Also ich habs nun so:
PHP-Code:
$boundary = '-----=' . md5( uniqid ( rand() ) );
$mail_absender="Likeflirt Team <info@likeflirt.de>";
$betreff="Re: Registration";
$headers = "From: $mail_absender\r\n";
$headers.= "Reply-To: Info <webmaster@likeflirt.de>\r\n";
$headers.= "Priority: urgent\r\n";
$headers.= "Precedence: first-class\r\n";
$headers.= "MIME-Version: 1.0\r\n";
$headers.= "Content-Type: multipart/mixed;boundary=\"$boundary\"\r\n";
$headers.= "Content-Transfer-Encoding: 8bit\r\n\r\n";
$nachricht = "--$boundary\r\n";
$nachricht.= "Hallo $name,\nHerzlich Willkommen bei Likeflirt.de\n\nIhre Zugangsdaten lauten:\nBenutzername: usw...";
$nachricht.= "--$boundary\r\n\r\n";
mail ($email, $betreff, $nachricht, $headers,"-f [email]info@likeflirt.de[/email]");
jedoch geht es immer noch nicht
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Thema bewerten |
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|