![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 47 Pomógł: 0 Dołączył: 25.06.2003 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
Witam
Wiem ze bylo juz sporo na temat seryjnego wysylania maili, w archiwum kopalem mocno i gleboko:). Przerobilem troche skrypt pochodny od tego z phpBB (byl wklejany kiedys tu). Problemem jest to ze wysyla pieknie pierwszego maila z listy, ale niestety zadnego wiecej. Zrobilem wyrzucanie na ekran calego dialogu z serwem SMTP, stamtad widac, ze po pierwszym QUIT (odpowiedz 221) juz nic serwer nie odpowiada. Co moze byc przyczyna? Jesli nie da rady w ten sposob to moze w jakis inny? (probowalem funkcji mail(), oczywiscie napotkalem te powszechne trudnosci zwiazane z duza iloscia maili). Parametry: plik 1.txt zawiera w kolejnych liniach kolejne maile, plik .php3 dostaje dane(tresc,temat) z formularza html, wysylam to kompa(win89,apache1.3,php4.0.5) w LANie. Admin serwera SMTP mowi ze moja podsiec nie ma zadnych blokad na tym serwerze SMTP. Mysle ze dosyc wyczerpujace wyjasnienia, ponizej nieposluszny;) skrypt: [php:1:5059185e43]<?php function server_parse($socket) { $server_response=fgets($socket,256); $res=substr($server_response,0,3); if($res>=400) die('Problem z wysyłaniem. '.$server_response); print("$server_response<BR>"); } $fp=fopen("1.txt","r"); $plik=fread($fp,filesize("1.txt")); $adresaci=split("n",$plik); fclose($fp); $wyslano=0; $smtp_host = 'mail.ic.net.pl'; $email = 'infopap@infopap.pl'; while($adresat=each($adresaci)) { $socket=pfsockopen($smtp_host,25); if(!$socket) echo "Nie mogę się połączyć z SMTP"; server_parse($socket); $adresat[value]=trim($adresat[value]); fputs($socket, 'HELO '.$smtp_host."rn"); server_parse($socket); fputs($socket, 'MAIL FROM: <'.$email.">rn"); server_parse($socket); fputs($socket, 'RCPT TO: <'.$adresat[value].">rn"); server_parse($socket); fputs($socket, 'DATA'."rn"); server_parse($socket); $naglowek = "MIME-Version: 1.0rnContent-type: text/html; charset=iso-8859-2rn"; $naglowek .= "Subject: $tematrn"; $naglowek .= "To: $adresat[value] <$adresat[value]>rn"; fputs($socket, "$naglowekrnrn"); fputs($socket, "$trescrn"); fputs($socket, ".rn"); server_parse($socket); fputs($socket, "QUITrn"); server_parse($socket); $wyslano++; fclose($socket); } print("Wyslano $wyslano maili"); ?>[/php:1:5059185e43] |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 03:24 |