Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

Probleme beim mailversand mit PHP

Alles rund um das Internet, Internet-Anwendungen (E-Mail, Surfen, Cloud usw.) und das Einrichten von Netzwerken einschl. VPN unter Linux

Moderator: Moderatoren

Antworten
capser
Member
Member
Beiträge: 62
Registriert: 22. Nov 2004, 10:09

Probleme beim mailversand mit PHP

Beitrag von capser »

Hallo,
wir haben seit kurzem ein merkwürdiges Problem wenn wir mit hilfe von php mails versenden. Es ist erst seit kurzem so vorher war es nicht so.

Wenn wir eine mail verschicken wird nach jeder Zeile die diese mail enthält eine Leerzeile eingefügt, habe dazu leider auch im internet noch nichts gefunden und habe auch keine ahnung woran das liegen kann.

Also vorher sah eine mail die über php verschickt worden ist so aus :

Text1.Zeile
Text2.Zeile
Text3.Zeile

nun sieht sie aber so aus wenn wir uns die zuschicken lassen

Text1.Zeile

Text2.Zeile

Text3.Zeile

Was halt in der formatierung dann nicht sehr schön aussieht, für rat oder hilfe wäre ich sehr dankbar, vielleicht hatte ja einer schon mal ein ähnliches problem.

vielen dank schonmal für die mühe
nils
Benutzeravatar
nbkr
Guru
Guru
Beiträge: 2858
Registriert: 10. Jul 2004, 15:47

Beitrag von nbkr »

Kann es sein, dass ihr seit kurzem ein anderes Mailprogramm verwendet? Das mit den doppelten Zeilen kommt daher, dass auf unterschiedlichen Betriebsystemen unterschiedliche Zeichen für den Zeilenumbruch genutzt werden. \n für Linux \r\n für Windows, etc. Da kanns zu Problemem mit machen Mailprogrammen kommen.
Kann gar nicht sein, ich bin gefürchtet Wald aus, Wald ein.
capser
Member
Member
Beiträge: 62
Registriert: 22. Nov 2004, 10:09

Beitrag von capser »

Anderes Mailprogramm als versender oder als empfänger?
Also zum empfang kanns ja eigentlich nicht sein da wir auch mal an unsere externen accounts wie z.b gmx verschickt haben und da das gleiche problem auftritt.
Tja und zum versenden ist es eigentlich ganz normal Postifx, und wie gesagt das hatten wir schon immer. wir haben 3 Server bei uns, also 2 externe und einen internen. Auf einem externen funktioniert es nach wie vor. auf dem anderen externen und internen halt leider nicht mehr. und das einzige was mir einfällt was da geändert worden ist, war das wir Pear dort installiert haben aber kann es daran liegen?
Benutzeravatar
nbkr
Guru
Guru
Beiträge: 2858
Registriert: 10. Jul 2004, 15:47

Beitrag von nbkr »

Enthält die Mail Daten die aus einem Forumlar gekommen sind? Dann liegts evtl. daran, dass der Browser zusätzliche Umbrüche reinmacht. Stell das Textfeld mal auf wrap="soft". Desweiteren kannst Du natürlich vor dem Versand alle Umbrüche von PHP ersetzen lassen. Oder gleich eine HTML Mail schicken.
Kann gar nicht sein, ich bin gefürchtet Wald aus, Wald ein.
capser
Member
Member
Beiträge: 62
Registriert: 22. Nov 2004, 10:09

Beitrag von capser »

Also das umsteleln auf "soft" weiß ich gerade nicht ob das ne lösung wäre, muß ich mal testen.
Am browser allerdings würde ich das problem nicht fest machen da es auf einem anderen server ja im gleichen browser läuf.
aber ich habe jetzt mal ein wenig rumgetestet und ein einfaches mailscript geschickt und gesehen wo das problem auftritt.

also bei folgendem script

Code: Alles auswählen

<?php
mail("nils@mydomain.de", "Betreff", "Zeile 1\nZeile 2\nZeile 3");
?>
kommt es richtig an also :
zeile1
zeile2
zeile3

Bei folgendem script

Code: Alles auswählen

 <?php
$text = ' zeile1
zeile2
zeile3';
mail("nils@mydomain.de", "Betreff", $text);
?>
kommt es so an :
Zeile1

Zeile2

zeile3


Woran kann das problem liegen hilft das vielleicht ein wenig weiter? das ganze wurde einfach als script von der konsole ausgeführt ohne browser oder sonstigen sachen
Benutzeravatar
nbkr
Guru
Guru
Beiträge: 2858
Registriert: 10. Jul 2004, 15:47

Beitrag von nbkr »

Wie gesagt, es liegt am Zeilenumbruch. Beim ersten Beispiel hast Du nur \n als Umbruch. Beim zweiten Beispiel macht dein (Windows?) - Editor ein \r\n rein. Schon hast Du im Mailprogramm zwei Umbrüche. Mach einfach mittels str_replace() aus allen \r\n ein \n schon sollte das Problem gelöst sein.
Kann gar nicht sein, ich bin gefürchtet Wald aus, Wald ein.
capser
Member
Member
Beiträge: 62
Registriert: 22. Nov 2004, 10:09

Beitrag von capser »

Hi also du magst recht haben und ich habe es auchmal getestet ein

str_replace("\r\n", "\n", $mailing);

scheint auf den ersten blick alles probleme zu lösen, nur was mich an der lösung stört ist woher das problem auf einmal kam und wiese es auf einem server mit und auf einem anderen ohne läuft...

an welcher einstellung scheint das zu liegeb ist das ein Postfix ein apache oder ein php problem, oder besser gesagt einstellungssache und nicht problem?

aber vielen dank schonmal für die Hilfe, erstmal ist das natürlich ne lösung wäre mir wohler wenn ich es nicht umgehen könnte sonder die ursache auch finde
Antworten