Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] mail() i problem z serwerami hotmail.com i yahoo.com
Forum PHP.pl > Forum > PHP
TwojPan
Czesc,

Mam problem z tymi serwerami. NIC nie przychodzi na email tj nawet email nie przychodzi. Kiedy wysylam na np. onet. interie, gmail wsio jest ok a tutaj nawet ustawienie filtrow nie pomaga. Dodalem adres spod ktorego przesylam email (FROM) i tez nic. Wiem ze kod jest poprawny zreszta dla pewnosci wstawilem prosty przyklad f. mail() do innego pliku i wywolalem. Tez nic. Juz nie wiem co mam z tym robic a musze miec to pod hotmail i yahoo. Ktos pomoze questionmark.gif?

Zaznaczam że nie ma listów w spamie czy junk email. Nic, totalne zero.


  1. <?
  2. $o = mail("xxx@hotmail.com","temat","tresc");
  3.  
  4. if($o)
  5. {
  6. print "sent";
  7. }else{
  8. print "false";
  9. }
  10. ?>


Za każdym razem zwraca true a emaila jak nie bylo tak nie ma.


edit:

Znalazlem teraz taki przyklad i tez nic nie dochodzi. Przykld z manuala gdzie pisze ze dziala na hotmail rowniez :/ Na gmail dochodzi.

  1. <?php
  2. $to = "adresat@hotmail.com";
  3. $email = "odpokgo@onet.pl";
  4. $name = $_POST['name'];
  5. $subject = $_POST['subject'];
  6. $comment = $_POST['message'];
  7.  
  8. $To = strip_tags($to);
  9. $TextMessage =strip_tags(nl2br($comment),"<br>");
  10. $HTMLMessage =nl2br($comment);
  11. $FromName =strip_tags($name);
  12. $FromEmail =strip_tags($email);
  13. $Subject =strip_tags($subject);
  14.  
  15. $boundary1 =rand(0,9)."-"
  16. .rand(10000000000,9999999999)."-"
  17. .rand(10000000000,9999999999)."=:"
  18. .rand(10000,99999);
  19. $boundary2 =rand(0,9)."-".rand(10000000000,9999999999)."-"
  20. .rand(10000000000,9999999999)."=:"
  21. .rand(10000,99999);
  22.  
  23.  
  24. for($i=0; $i < count($_FILES['youfile']['name']); $i++){
  25. if(is_uploaded_file($_FILES['fileatt']['tmp_name'][$i]) &&
  26. !empty($_FILES['fileatt']['size'][$i]) &&
  27. !empty($_FILES['fileatt']['name'][$i])){
  28.  
  29. $attach ='yes';
  30. $end ='';
  31.  
  32. $handle =fopen($_FILES['fileatt']['tmp_name'][$i], 'rb');
  33. $f_contents =fread($handle, $_FILES['fileatt']['size'][$i]);
  34. $attachment[]=chunk_split(base64_encode($f_contents));
  35. fclose($handle);
  36.  
  37. $ftype[] =$_FILES['fileatt']['type'][$i];
  38. $fname[] =$_FILES['fileatt']['name'][$i];
  39. }
  40. }
  41.  
  42. /***************************************************************
  43.   Creating Email: Headers, BODY
  44.   1- HTML Email WIthout Attachment!! <<-------- H T M L ---------
  45.   ***************************************************************/
  46. #---->Headers Part
  47. $Headers =<<<AKAM
  48. From: $FromName <$FromEmail>
  49.  Reply-To: $FromEmail
  50.  MIME-Version: 1.0
  51.  Content-Type: multipart/alternative;
  52.   boundary="$boundary1"
  53. AKAM;
  54.  
  55. #---->BODY Part
  56. $Body =<<<AKAM
  57. MIME-Version: 1.0
  58.  Content-Type: multipart/alternative;
  59.   boundary="$boundary1"
  60.  
  61.  This is a multi-part message in MIME format.
  62.  
  63.  --$boundary1
  64.  Content-Type: text/plain;
  65.   charset="windows-1256"
  66.  Content-Transfer-Encoding: quoted-printable
  67.  
  68. $TextMessage
  69.  --$boundary1
  70.  Content-Type: text/html;
  71.   charset="windows-1256"
  72.  Content-Transfer-Encoding: quoted-printable
  73.  
  74. $HTMLMessage
  75.  
  76.  --$boundary1--
  77. AKAM;
  78.  
  79. /***************************************************************
  80.   2- HTML Email WIth Multiple Attachment <<----- Attachment ------
  81.   ***************************************************************/
  82.  
  83. if($attach=='yes') {
  84.  
  85. $attachments='';
  86. $Headers =<<<AKAM
  87. From: $FromName <$FromEmail>
  88.  Reply-To: $FromEmail
  89.  MIME-Version: 1.0
  90.  Content-Type: multipart/mixed;
  91.   boundary="$boundary1"
  92. AKAM;
  93.  
  94. for($j=0;$j<count($ftype); $j++){
  95. $attachments.=<<<ATTA
  96. --$boundary1
  97.  Content-Type: $ftype[$j];
  98.   name="$fname[$i]"
  99.  Content-Transfer-Encoding: base64
  100.  Content-Disposition: attachment;
  101.   filename="$fname[$j]"
  102.  
  103. $attachment[$j]
  104.  
  105. ATTA;
  106. }
  107.  
  108. $Body =<<<AKAM
  109. This is a multi-part message in MIME format.
  110.  
  111.  --$boundary1
  112.  Content-Type: multipart/alternative;
  113.   boundary="$boundary2"
  114.  
  115.  --$boundary2
  116.  Content-Type: text/plain;
  117.   charset="windows-1256"
  118.  Content-Transfer-Encoding: quoted-printable
  119.  
  120. $TextMessage
  121.  --$boundary2
  122.  Content-Type: text/html;
  123.   charset="windows-1256"
  124.  Content-Transfer-Encoding: quoted-printable
  125.  
  126. $HTMLMessage
  127.  
  128.  --$boundary2--
  129.  
  130. $attachments
  131.  --$boundary1--
  132. AKAM;
  133. }
  134.  
  135. /***************************************************************
  136.   Sending Email
  137.   ***************************************************************/
  138. $ok=mail($To, $Subject, $Body, $Headers);
  139. echo $ok?"<h1> Mail Sent</h1>":"<h1> Mail not SEND</h1>";
  140. ?>
MrMag
a jaki jest adres from? od kogo jest ten mail? dodaj dodatkowe naglowki do maila.
TwojPan
Cytat(MrMag @ 14.04.2014, 07:38:00 ) *
a jaki jest adres from? od kogo jest ten mail? dodaj dodatkowe naglowki do maila.


  1. $header = "From: miro@" . $_SERVER['SERVER_NAME'] . "\r\n" .
  2. "X-Mailer: PHP/" . phpversion();
  3.  
  4. $opis = "Hi " .$LOGIN. "!\r\n";
  5. $opis .= "Please read this email carefully, it contains important information about your [nazwa] account.\r\n\r\n";
  6. $opis .= "Your account details below:\r\n\r\n";
  7. $opis .= "Login name / Your username: ";
  8. $opis .= $LOGIN."\r\n";
  9. $opis .= "Your password: ";
  10. $opis .= $PASSWORD . "\r\n";
  11. $opis .= "E-mail: ";
  12. $opis .= $EMAIL . "\n\n";
  13. $opis .= "\r\n";
  14. $opis .= "If you wish to log in click here: ";
  15. $opis .= "adres";
  16. $opis .= "\r\n\r\n";
  17. $opis .= "This E-mail was generated and sent from xxx Ltd. website " . $_SERVER['SERVER_NAME'] . " .\r\n";
  18. $opis .= "*** This is an automatically generated e-mail, please do not reply. ***";
  19.  
  20. @mail($EMAIL,$title,$opis,$header);
MrMag
czy serwer, z ktorego to wysylasz to serwer onetu? jezeli ip nadawcy jest niezgodne z rekordem mx serwera danej domeny nadawcy to poczta moze byc odrzucona.

proponuje przerzucic sie z funkcji mail na np. phpmailer i wysylac poczte laczac sie z danym serwerem pocztowym.
TwojPan
Cytat(MrMag @ 14.04.2014, 07:55:23 ) *
czy serwer, z ktorego to wysylasz to serwer onetu? jezeli ip nadawcy jest niezgodne z rekordem mx serwera danej domeny nadawcy to poczta moze byc odrzucona.

proponuje przerzucic sie z funkcji mail na np. phpmailer i wysylac poczte laczac sie z danym serwerem pocztowym.

Nie Onetu. To serwer platny. Nie ma z nim problemu. Wszedzie dochodza emaile procz yahoo i hotmail.
phpmailer to armata na muchy. Jka widac wysylam tylko troche tekstu, zadne zalaczniki, obrazy etc...

W czym moze byc problem questionmark.gif
MrMag
filtr antyspamowy moze odrzucac poczte z IP niepasujacego do rekordu mx. skoro do innych dochodzi a do nich nie to cos jest na rzeczy. po drugie moze ta poczta wciac idzie i dojdzie za pare godzin smile.gif zobacz tez w folderze spam czy czegos nie ma.
TwojPan
Cytat(MrMag @ 14.04.2014, 08:08:12 ) *
filtr antyspamowy moze odrzucac poczte z IP niepasujacego do rekordu mx. skoro do innych dochodzi a do nich nie to cos jest na rzeczy. po drugie moze ta poczta wciac idzie i dojdzie za pare godzin smile.gif zobacz tez w folderze spam czy czegos nie ma.
Filtr sprawdzalem o czym pisalem w pierwszym poscie jak rowniez o folderze spam/junk. Wątpie żeby poczta "szla" od 3 dni smile.gif

Najlepsze to to że jeszcze niedawno to działało prawidłowo.
MrMag
mowie o filtrze na hotmailu, nie u Ciebie na kompie czy gdzies tam. Twoj 1 zostal juz 20 razy edytowany tongue.gif na poczatku byla tam 1 linijka kodu i kropelka opisu.
TwojPan
Cytat(MrMag @ 14.04.2014, 08:15:38 ) *
mowie o filtrze na hotmailu, nie u Ciebie na kompie czy gdzies tam. Twoj 1 zostal juz 20 razy edytowany tongue.gif na poczatku byla tam 1 linijka kodu i kropelka opisu.
No a ja o czym mowie. Przeciez nie grzebie w ustawieniach u siebie tylko na serwerze.
Edytowalem 2 razy. Pierwszy raz minute moze po napisaniu posta glownego a przyklad z manuala dodalem pozniej ale nie o tym mowa.

Ktoś pomoże questionmark.gif
MrMag
moze odrzucaja cala poczte z onetu smile.gif ja kiedys odrzucalem cala poczte z hotmaila bo i tak zawsze byl to spam wink.gif
TwojPan
Cytat(MrMag @ 14.04.2014, 08:26:42 ) *
moze odrzucaja cala poczte z onetu smile.gif ja kiedys odrzucalem cala poczte z hotmaila bo i tak zawsze byl to spam wink.gif
Ale co ty z tym onetem ? gdzie ja napisalem ze wysylam z onetu.Jesli ci chodzi o ten prayklad gdzie pisze ONET.PL to tylko przyklad bo tam moze byc byle co z tego co widze bo skoro na gmail, onet, wp, interie itd.... dochodza emaile gdzie w naglowek FROM daje "dupablada@blebleble.pl" i dochodzi to cos nie tak..........To po pierwsze po drugie NIE MA FILTROWANIA ustawionego a nawet dodałem regule/adres zeby serwer hotmaila łykał emaile z tego adresu (FROM)

Chyba że ustwienia sa gdzies odgórne do ktrorych nie ma dojscia ale to by bylo bez sensu przeciez.


Zresztą $_SERVER['SERVER_NAME'] ściaga sobie sam nazwe serwera. Skoro musi byc prawidlowy to jest ale i tak nie dochodzi.

Zmieniłem serwer i poszlo ale do spamu. Cholera co jest questionmark.gif?

Ten lipny serwer to vdl.pl ktory hostuje linuxpl.com
MrMag
to moze odrzucaja cala poczte z tego ip, niezaleznie od filtra uzytkownika na hotmailu
TwojPan
Cytat(MrMag @ 14.04.2014, 09:16:03 ) *
to moze odrzucaja cala poczte z tego ip, niezaleznie od filtra uzytkownika na hotmailu
Tk właśnie jest. Gadałem z adminem serwera i ten adres jest na czarnej liście. Trzeba zmienić @
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.