Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: znak nowej linii w nagłówkach maila
Forum PHP.pl > Forum > PHP
janek
Witam,

Wysyłam mail w HTML-u, nagłówki:
[php:1:370540f01a]<?php
$mail_headers = '';
$mail_headers .= "Return-Path: $mail_fromrn";
$mail_headers .= "From: $mail_fromrn";
$mail_headers .= "Reply-to: $mail_fromrn";
$mail_headers .= "MIME-Version: 1.0rn";
$mail_headers .= "Content-Type: text/html; charset="ISO-8859-2"rn";
$mail_headers .= "Content-Transfer-Encoding: 8bitrnrn";

?>[/php:1:370540f01a]

Serwer na którym mam plik ze skryptem wysyłającym mail to Linux.

I teraz tak:
1. Wysłałem mail na onet i interię- wszystko było OK
2. Wysłałem mail na konto pocztowe na tym samym serwerze na którym mam skrypt i wyskoczyły mi krzaki- po ściągnięciu poczty do Outlooka (lub klienta poczty NN- bez znaczenia) pojawiły mi się nagłówki i kod HTML.
3. Trochę kombinowałem co jest grane i w końcu zmieniłem kod:


[php:1:370540f01a]<?php
$mail_headers = '';
$mail_headers .= "Return-Path: $mail_fromn";
$mail_headers .= "From: $mail_fromn";
$mail_headers .= "Reply-to: $mail_fromn";
$mail_headers .= "MIME-Version: 1.0n";
$mail_headers .= "Content-Type: text/html; charset="ISO-8859-2"n";
$mail_headers .= "Content-Transfer-Encoding: 8bitnn";

?>[/php:1:370540f01a]

i jest dobrze!
4. Znowu wysłałem testowo mail na onet i interię i też nie było problemu.

Pytanie jest takie: czy mogę to tak zostawić? Czy nie pojawią sie problemy w przyszłości z innymi serwerami jeżeli zamiast rn używam n?
Z góry dzięki za pomoc!
id4
Witam

W zasadzie chyba jedynie Windows interpretuje przejście do nowej lini jako rn - inne środowiska interpretują poprawnie n.
Bakus
Nie do końca się z tym mogę zgodzić... Ja mam serwer poczty na windowsowym Chamsterze 2.0 i poprawnie interpretuje obie możliwości, więc to nie zależy raczej od systemu, a od oprogramowania jakie te listy (nagłówki) przetwarza...
janek
Dzięki wielkie za odpowiedzi :!:

1. Ciekaw jestem jeszcze Waszej opinii jakie jest prawdopodobieństwo że coś się posypie jeżeli zostawię n zamiast rn. Tj. jaką mam szansę że trafię na taki zestaw serwera + oprogramowania który sobie z tym nie poradzi?

2. I jakie znaki końca wiersza stosujecie Wy i czy mieliście podobne problemy?
id4
Ja zawsze stosuję rn - zawsze mi to działało i nie miałem z tym problemów. r to powrót karetki a n to zejście karetki do nowej lini. I w zasadzie to chyba bezpieczniej stosować rn, bo jeśli któreś oprogramowanie nie będzie cofało karetki, to wtedy się posypie.
To takie moje skromne zdanie :wink:
janek
Dzieki :!: , czyli rn (właściwie to we wszystkich książkach o php które czytałem też tak jest), gdyby tylko nie ten jeden serwer ...
Pianandrill
Nareszcie znalazłem rozwiązanie problemy. Nie wiem dlaczego wcześniej to nie działało (znaczy nie do końca wiem) ale jak używałem headers'ów \r\n to w outlooku głupoty się pojawiały, teraz już jest spokój... nareszcie. Tyle tematów o tym jest ale nigdzie niema tak naprawde rozwiązania tego problemu - chyba tylko tutaj
Dzięki Wam i dziki forum.php.pl za to, że jesteś snitch.gif
Parti
Wg. RFC - 561 należy stosować \r\n.
y3ti
Dokladnie tak jak powiedzial Pati w RFC proponuja uzywac \r\n

ftp://ftp.rfc-editor.org/in-notes/rfc561.txt

Pozatym proponuje korzystac z gotowych rozwiazan. Polecam klase PEAR Mail oraz Mail_Mime, bardzo latwa w uzytkownaniu i niezawodna. Nie trzeba sie juz martwic
o szczegoly techniczne, tylko sie korzysta smile.gif
Bartech
a ja dodam, że dziękuję za ten temat, dzięki niemu wiem jak wysyłać maile z grafiką i wogóle!!!

Pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.