php & mail() geht nicht. wie konfigurieren?

Status
Für weitere Antworten geschlossen.

zwantE

Benutzer
Mitglied seit
02. Feb 2012
Beiträge
302
Punkte für Reaktionen
0
Punkte
16
Moin,

ich hab einige Testseiten laufen auf den ich Module schreibe und teste. Hardware&Software siehe Signatur

Nun bin ich an den Punkt gelangt, an dem Infomails verschickt werden sollen, was man unter php ja mit mail() macht.
Leider funktioniert das nicht.

Muss ich irgendwo was einstellen, damit das funktioniert oder geht das gar nicht?
Leider recht mir auch keine alternative da ich auf die Funktion mail() angewiesen bin.

Viele Grüße
 

mega

Benutzer
Mitglied seit
26. Feb 2008
Beiträge
1.144
Punkte für Reaktionen
2
Punkte
64
Es muss einfach innerhalb des DSM der Versand von System-Mails eingerichtet werden.
Das empfiehlt sich eh. So bekommt man auch Info bei Platten-Problemen o.ä.
 

zwantE

Benutzer
Mitglied seit
02. Feb 2012
Beiträge
302
Punkte für Reaktionen
0
Punkte
16
Das empfiehlt sich eh. So bekommt man auch Info bei Platten-Problemen o.ä.
Die Meldungen bekomme ich per push aufs Handy...

alles klar, dann richte ich den Mailversand mal ein und gucke was passiert. danke
 

fips1989

Benutzer
Mitglied seit
17. Mrz 2013
Beiträge
10
Punkte für Reaktionen
0
Punkte
1
Hallo zusammen,

ich habe die neue DSM 5 Beta laufen. Die Funktion mail() machts hier leider nicht mehr.
In den Einstellungen habe ich die Benachrichtigungen aktiviert. Testmail funktioniert auch.
Die Funktion gibt auch ein true zurück. Was alles darauf hindeutet dass es eingerichtet ist.
Aber Mails kommen nicht an. Ich habe an meinen Script nichts verändert.

Hat jmd auch das Problem?
 

zwantE

Benutzer
Mitglied seit
02. Feb 2012
Beiträge
302
Punkte für Reaktionen
0
Punkte
16
also bei mir geht funktioniert nach der Einrichtung der Emailbenachrichtung die mail() - Funktion.
danke noch mal an mega

@fips1989: so wie du das schilderst klingt das eher nach einen Bug der BETA... ich würde das mal den Support melden
 

fpo4711

Benutzer
Mitglied seit
26. Mai 2010
Beiträge
2.772
Punkte für Reaktionen
1
Punkte
0
Den optionalen Parameter "additional_parameters" mit einer Leerkette übegeben, dann geht es auch mit der Beta.

Rich (BBCode):
mail("Max.Muster@domaine.de","Test","Na Hallo",null,'');

Gruß Frank
 

fips1989

Benutzer
Mitglied seit
17. Mrz 2013
Beiträge
10
Punkte für Reaktionen
0
Punkte
1
DSM 5.0 Beta mail() php

Also ich habe jetzt noch mal bei mir probiert. Habe in meiner Mail Function 2 Empfänger drinne "empfänger1@mail.de,empfänger2@mail.de".
Wenn ich nur einen rein nehme funktioniert es auch ohne "additional_parameters". Mit 2 Empfängern bekomme ich es nicht zum laufen.

Hinzu kommt dass mein HTML - Header nicht greift. Und in der Email als Klartext angezeigt wird.
Und dadurch die Email auch nicht in HTML codiert wird.
PHP:
$header  = "MIME-Version: 1.0\r\n";
$header .= "Content-type: text/html; charset=utf-8\r\n";
$header .= "From: Berlin <$absender>";
$header .= "Reply-To: $antwortan\r\n";
$header .= "X-Mailer: PHP ". phpversion();

if (mail($empfaenger,
      $betreff,
      $mailtext,
      $header,'')) {
  echo "Die Email wurde erfolgreich versendet!";
} else {
  echo "Die Email konnte nicht versendet werden!";
}

Ist wohl dann doch ein Fall für den Support?
Oder fällt euch noch was ein?

Danke & Gruß Philipp
 

fpo4711

Benutzer
Mitglied seit
26. Mai 2010
Beiträge
2.772
Punkte für Reaktionen
1
Punkte
0
Und wie wäre es mal mit einem Semikolon um die Empfänger zu trennen. Und bei dem Parameter ist nur wie Du es ja schon gemacht hast eine Leerkette nötig. Ist aber trotzdem ein Fall für den Support da es auch ohne optionale Parameter (also auch ohne Leerkette) funktionieren sollte.

Gruß Frank

Edit: Gerade nochmal getestet. Trenner ist das Komma und funktioniert auch an mehrere Empfänger. Und fehlt Dir da nicht ein \r\n im Header.
 
Zuletzt bearbeitet:

fips1989

Benutzer
Mitglied seit
17. Mrz 2013
Beiträge
10
Punkte für Reaktionen
0
Punkte
1
So also zur Info jetzt klappt es auch mit "empfänger1@mail.de,empfänger2@mail.de".

Das "\r" im Header muss raus. Dann klappt alles tadellos.
 

fpo4711

Benutzer
Mitglied seit
26. Mai 2010
Beiträge
2.772
Punkte für Reaktionen
1
Punkte
0
Das "\r" im Header muss raus. Dann klappt alles tadellos.

Also bei mir funktioniert das auch mit CR/LF und ich denke mal hier fehlt Dir definitv das Zeilenende.

PHP:
$header .= "From: Berlin <$absender>";

Gruß Frank
 

fips1989

Benutzer
Mitglied seit
17. Mrz 2013
Beiträge
10
Punkte für Reaktionen
0
Punkte
1
Habs probiert. Funktioniert nicht.

Vielleicht liegt's auch am Provider?
Bekomme ja das Feedback, dass die Mail versendet wurde. Ist die Frage was das aussagt.
Oder gibts es irgendwo ein Log wo man mal rein gucken könnte.

Gruß Philipp
 

fpo4711

Benutzer
Mitglied seit
26. Mai 2010
Beiträge
2.772
Punkte für Reaktionen
1
Punkte
0
Also soviel ich weis wird der optionale Header erst einmal von php geparst. Bin mir dabei aber nicht sicher. Kann natürlich auch am MTA liegen. Ich überprüfe aber in jedem Fall auch immer bei solchen Sachen dann eben auch was wirklich im Header ankommt.

Gruß Frank
 

fpo4711

Benutzer
Mitglied seit
26. Mai 2010
Beiträge
2.772
Punkte für Reaktionen
1
Punkte
0
Hiermal dein Code in modifizierter Form, der jedenfalls mit t-online als Relay bei mir funktioniert.

PHP:
$header  = "MIME-Version: 1.0\r\n";
$header .= "Content-type: text/html; charset=utf-8\r\n";
$header .= "From: Berlin <$absender>\r\n";
$header .= "Reply-To: $antwortan\r\n";
$header .= "X-Mailer: PHP ". phpversion() ."\r\n";

if (mail($empfaenger,
      $betreff,
      $mailtext,
      $header,'')) {
  echo "Die Email wurde erfolgreich versendet!";
} else {
  echo "Die Email konnte nicht versendet werden!";
}

Gruß Frank
 

fips1989

Benutzer
Mitglied seit
17. Mrz 2013
Beiträge
10
Punkte für Reaktionen
0
Punkte
1
Mit diesem Code versendet er bei mir (mit einem Empfänger) zwar die Mail. Aber im Header steht dann nur "MIME-Version: 1.0".
Der Rest des Headers wird direkt in die Mail geschrieben.
Bei 2 Empfänger wird die Mail gar nicht versendet bzw. kommt nicht an.

Wenn ich das \r raus nehme kommt sie dann auch bei 2 Empfängern an und das auch mit kompletten Header.
Sehr seltsam.

Gruß Philipp
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat