Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: php mail() - zawsze wersja Html i Textowa wewnatrz
Forum PHP.pl > Forum > PHP
robert1974
czesc,
Bardzo duzo maili trafia ktore wyslalem w php mail() poszlo do Spamu/Junk.
Probuje to jakos poprawic i znalazlem taka stronke ktora pozwala zbadac email: https://www.mail-tester.com

Jedna z sugestii programu jest generowanie takich emailii ktore maja zarowno wersje textowa jak i htmlowa.

Tutaj jest przyklad jak cos takiego zrobic: http://www.tek-tips.com/faqs.cfm?fid=2681

Tylko czy nie narobie w ten sposob wiecej problemow niz pozytku. Macie moze jakies doswiadczenie i dodatkowe wskazowki z takim generowaniem dwoch wersji emaila?
dzieki.

adbacz
Generowanie dwóch wersji maila w jednym to nic innego jak dodanie tak jakby załącznika w postaci text/plain. Jest to brane pod uwagę tylko w programach, gdzie nie może być wyświetlany kod HTML, więc wyświetlany jest czysty tekst (o ile jest załączony).

Problemem wrzucania wiadomości do SPAMu może być:
1. Wysyłasz na polską skrzynkę, ale w treści są obcojęzyczne słowa (najczęstrze, z czym sie spotkałem).
2. Nie wysyłasz wszystkich nagłówków, jakie są wymagane.
3. Może być też przyczyną to, z jakiego maila wysyłasz. W sensie chodzi mi o nagłówek From.
kreatiff
Z czego wysyłasz maile? Locala? Może to nie o html chodzi, ale np. rekord SPF?
robert1974
@kreatiff: wysylam z home.pl, poradzili mi dodanie rekordu SPF i to juz uczynilem. Narzedzie ktore podalem nizej pokazuje ze ta czesc jest OK.

@adbacz
Cytat(adbacz @ 3.05.2015, 12:06:46 ) *
Generowanie dwóch wersji maila w jednym to nic innego jak dodanie tak jakby załącznika w postaci text/plain. Jest to brane pod uwagę tylko w programach, gdzie nie może być wyświetlany kod HTML, więc wyświetlany jest czysty tekst (o ile jest załączony).


tak, niby tak, ale jeszcze w tym przyladzie (link podalem) jest ze trzeba dodawac informacje typu:
"This is a multi-part message in MIME format.";
i rzeczy typu: mime_boundary_header
troche sie to komplikuje.

Cytat(adbacz @ 3.05.2015, 12:06:46 ) *
Problemem wrzucania wiadomości do SPAMu może być:
1. Wysyłasz na polską skrzynkę, ale w treści są obcojęzyczne słowa (najczęstrze, z czym sie spotkałem).
2. Nie wysyłasz wszystkich nagłówków, jakie są wymagane.
3. Może być też przyczyną to, z jakiego maila wysyłasz. W sensie chodzi mi o nagłówek From.


ad1. to prawda, akurat teraz testujemy na emailu z wirtualnej polski, bo tam trafia do spamu. Ale i hotmail.com wrzuca do spamu. lista emailowa jest z calego swiata, a emaile sa po angielsku.

ad2. mozliwe, naglowki wygladaja tak:

  1. $headers = 'From: moja_nazwa<info@moja_domena.com>' . "\r\n";
  2. $headers .= 'Reply-To: info@moja_domena.com' . "\r\n";
  3. $headers .= 'Return-Path: info@moja_domena.com' . "\r\n";;
  4. $headers .= "MIME-Version: 1.0\r\n";
  5. $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
  6. $headers .= "X-Priority: 3\r\n";
  7. $headers .= "X-Mailer: PHP". phpversion() ."\r\n";




po rozmowie z home.pl dodalismy jeszcze klucz DKIM, zobaczymy czy to cos pomoze czy w dalszym ciagu wp.pl bedzie trakowac email jako spam.

po pol-dnia zmagan z home.pl i dostalem nastepujaca informacje:
"Nasz serwer nie obsługuje DKIM. Aby DKIM działało wysyłka musiałaby być realizowana z serwera. który taki DKIm obsługuje."

salfunglandyare
Generalnie DKIM na pewno by pomógł, ale systemy antyspamowe działają w większości na zasadzie przydzielania punktów za poszczególne testy i tak:
* sprawdzanie nagłówków - im bardziej pełne, tym lepiej, natomiast raczej zrezygnowałbym z 'PHP'.phpversion() dla X-Mailer, umieść tam np. linux/adres-strony.pl, niekiedy
* wersja alternatywna wiadomości - wbrew pozorom nie jest to takie trudne:
  1. $boundary = 'JAKIS-TAM-TEKST-'.sha1(microtime());
  2. $headers .= "Content-type: multipart/alternative; boundary=$boundary\r\n";


dalej

  1. $message = "--$boundary\r\n".
  2. 'Content-Type: text/plain; charset="iso-8859-1"
  3. Content-Transfer-Encoding: quoted-printable
  4. '.quoted_printable_encode(strip_tags($html));
  5. $message .= "\r\n--$boundary\r\n".
  6. 'Content-Type: text/html; charset="iso-8859-1"
  7. Content-Transfer-Encoding: quoted-printable
  8. '.quoted_printable_encode($html);
  9. $message .= "\r\n--$boundary--";


Taka uwaga - zamiast quoted-printable można użyć 7bit, wtedy nie trzeba konwertować, ale polecam używać wszędzie gdzie to możliwe właśnie quoted-printable
* sprawdzanie treści - tu, w zależności od testów można załapać punkty za zbyt krótką treść, za słowa, czy wyrażenia kluczowe, za wiele różnych rzeczy...

//EDIT - dostał się '\' przed '-'
robert1974
dziekuje bardzo, biore sie za to, dam znac.

vokiel
Robisz to żeby się podszkolić w generowaniu maila, czy po prostu potrzebujesz mieć to zrobione dobrze? Bo jeśli druga opcja to proponuję skorzystać z gotowej biblioteki typu PHPMailer lub SwiftMailer.

Poza tym, widzę że masz swoją domenę, zatem wysyłaj maile z autoryzacją SMTP.
robert1974
robie to by sie nauczyc i by dzialalo smile.gif

nauczylem sie uzywac funkcji mail() z php, i tak brne ta droga. Te rzeczy ktore wymieniles to nie znam zalet i wad, wiec musze doczytac. dzieki za komentarz.

Poniewaz jeden z emailii ktory trafial do spamu byl na wp.pl, to napisalismy do WP i ku zaskoczeniu otrzymalismy szybka, mila i konkretna odpowiedz.
"
Uprzejmie informujemy, że wiadomość została oznaczona jako SPAM przez system antyspamowy WP ponieważ:
- zawartość maila została oznaczona przez filtr Bayes
- zawiera obrazek lub link do obrazka w formacie HTML
- brak typu MIME dla PLAIN-TEXT (jest tylko HTML)
- błędy w konstrukcji wiadomości HTML (tag html)

Złożenie się powyższych warunków jest przyczyną odrzucenia wiadomości. Sugerujemy poprawić konstrukcję / zwartość wysłanej wiadomości"

@salfunglandyare

dodalem zgodnie ze wskazowka, i program pokazuje juz 9/10 jakosc emaila, czyli super, bo to -1 jest za ten klucz ktorego Home.pl nie obsluguje ....
niestety z jakiegos powodu email otwiera sie pusty sad.gif

salfunglandyare
Wklej gdzieś źródło maila (może być na PW, jeśli nie chcesz tu), ciężko mi powiedzieć, dlaczego pokazuje się pusty bez wiedzy, jak wygląda źródło
robert1974
problem rozwiazany dzieki @salfunglandyare
nawet tracking php i maly obrazek z logo na dole emaila nie przeszkadzaja. Na tych skrzynkach gdzie szlo do Spamu sprawdzilismy ze trafia pieknie do Inboxa, ufff
wielkie dzieki!
casperii
Cytat(robert1974 @ 6.05.2015, 21:25:41 ) *
problem rozwiazany dzieki @salfunglandyare
nawet tracking php i maly obrazek z logo na dole emaila nie przeszkadzaja. Na tych skrzynkach gdzie szlo do Spamu sprawdzilismy ze trafia pieknie do Inboxa, ufff
wielkie dzieki!


Kolego , czy mógłbyś wysłać tutaj rozwiązanie jak napisać poprawnie nagłówki by nie lądowały w spamie ?
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.