Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] phpMailer i problem z wysylka maili na wp, onet, o2
Forum PHP.pl > Forum > PHP
be2k
witam

do wysylki maili uzywam klasy phpMailer, ale na onet, wp i o2 zadne maile nie dochodza. Dochodza tylko na gmaila.

probowalem zarowno wysylac stosujac mailer "mail", oto kod:
  1. <?php
  2. $mail = new PHPMailer();
  3. $mail->Mailer  = "mail";
  4. $mail->From  = "no_replay@host.pl";
  5. $mail->FromName = "Nadawca";
  6. $mail->Subject = "Temat maila";
  7. $mail->CharSet = "iso-8859-2";
  8. $mail->Body = $body;
  9. $mail->AddAddress("adres@wp.pl", "nazwa adresata");
  10. $mail->AddAddress("adres@poczta.onet.pl", "nazwa adresata");
  11. $mail->AddAddress("adres@o2.pl", "nazwa adresata");
  12. $mail->AddAddress("adres@gmail.com", "nazwa adresata");
  13. $sendResult = $mail->Send(); //sendResult ma wartosc true
  14. ?>


oraz jako mailer "smtp":
  1. <?php
  2. $mail = new PHPMailer();
  3. $mail->IsSMTP(); //ustawia mailer "smtp"
  4. $mail->SMTPAuth = true;
  5. $mail->Username = "nazwa_usera";
  6. $mail->Password = "haslo";
  7. $mail->From  = "emailnadawcy@host.pl";
  8. $mail->FromName = "Nadawca";
  9. $mail->Subject = "Temat maila";
  10. $mail->CharSet = "iso-8859-2";
  11. $mail->Body = $body;
  12. $mail->AddAddress("adres@wp.pl", "nazwa adresata");
  13. $mail->AddAddress("adres@poczta.onet.pl", "nazwa adresata");
  14. $mail->AddAddress("adres@o2.pl", "nazwa adresata");
  15. $mail->AddAddress("adres@gmail.com", "nazwa adresata");
  16. $sendResult = $mail->Send(); //sendResult ma wartosc true
  17. ?>


w obu przypadkach mail dochodzi tylko na skrzynke gmail.com. sprawdzalem spam, nic tam nie laduje.

dla testow zrobilem jeszcze wysylke zwykla funkcja mail():
  1. <?php
  2. $header = "MIME-Version: 1.0\nContent-Type: text/html; charset=ISO-8859-2\nFrom: no_replay@host.pl";
  3.  
  4. $rt = mail('adres@wp.pl', "temat maila", $body, $header);
  5. if($rt) echo "OK";
  6. else echo "NO";
  7.  
  8. $rt = mail('adres@o2.pl', "temat maila", $body, $header);
  9. if($rt) echo "OK";
  10. else echo "NO";
  11.  
  12. $rt = mail('adres@poczta.onet.pl', "temat maila", $body, $header);
  13. if($rt) echo "OK";
  14. else echo "NO";
  15. ?>

i dochodza maile zarowno na wp, onet jak i o2. i to mnie dziwi, bo przeciez uzywajac w phpMailerze mailera "mail" klasa rowniez wysyla maila za pomoca funkcji mail(). wiec dlaczego w tamtym przypadku dochodza maile tylko na gmail, a w tym (nazwijmy go "rzecznym") dochodza wszedzie.

wydaje mi sie ze jedyna roznica jaka moze byc to w naglowkach jakie ustawia phpMailer (ja nic tam dodatkowo nie kombinuje jak widac na zalaczonych kodach) i w sposobie w jaki koduje tresc maila. no ale jak to taka dobra klasa to dlaczego nie dziala?

jesli to cos pomoze to strona jest hostowana na home.pl i serwer poczty jest rowniez na home.pl
Indeo
Problemem nie jest skrypt tylko prawdopodobnie brak wpisu w REF DNS dostawcy usług hostingowych. Skontaktuj się z dostawcą usług i pokaz im najlepiej zwrotki maili (zapewne wysyłając maile nawet z programu pocztowego tez nie dochodzą). To coraz bardziej popularny problem.
be2k
wszystko by bylo cacy gdyby za pomoca "recznej" funkcji mail() nie dzialala wysylka na adresy o2, wp i onet. a tak to cholera wie dlaczego tak dzialaja a phpMailerem nie. gdyby cos bylo z hostingiem to by chyba nie dalo sie wyslac obydwoma sposobami, czy sie myle ?

Magia normalnie magia.

Przeanalizowalem naglowki ktore dodaje phpMailer do wiadomosci. po kolei je dodawalem , usuwalem i doszedlem do tego ze maile na wp, onet i o2 nie dochodza gdy w naglowku jest ustawiony Return-Path
slabo??
grzemach
a mnie zastanawia po jakim czasie sprawdzałeś że nie dochodzą, na gmaila dochodzą lotem błyskawicy, ale np na onet, wp a zwłaszcza o2 idą i idą. jak długo czekałeś i sprawdzałeś? mi na wp szedł mail ok godziny, na onet ok 10 min na o2 to są nawet dni...
be2k
na pewno wystarczajaco dlugo, pozatym pisalem ze jak wysylam bezposrednio funkcja mail() to dochodza na wszystkie adresy - i jest to zazwyczaj max. 10min.

tak czy inaczej problem zostal zlokalizowany o czym napisalem wyzej, problem w tym ze nie mam pojecia dlaczego tak sie dzieje.
subey
warto pamietać że jak email nadawcy nie istnieje(ja sie kopnełem w swojej domenie i wpisalem pl zamiast eu, a taka domena nie istnieje) to maile na o2 nie dochodza, na gmaila dochodzą zawsze smile.gif
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.