[ Serb4EverBRE @ 20.09.2004. 18:29 ] @
Pravim newslist

Zelim da posaljem e-mail svima sa liste.
Da li ce uspeti ako napravim sledecu petlju

$i=0;
WHILE $i<$brojklienta
{
$recipient=mysql_result($req,$i,"email");
mail($recipient, $subject, $msg, $mailheaders);
}

----------------------------------------------------------------

Mislim da bi trebalo da radi, ali da li ce biti problema ako broj e-maila bude 100,1000,10000???
Da li ce petlja ici do kraja?

hvala
[ Chiller @ 20.09.2004. 21:34 ] @
ako je mashina jaka i ima dobru vezu, ne bi trebalo biti problema. Ipak, mozes da napravis i sa vremenskom razlikom (za kracu pauzu mozes i sleep da pravis...)

Poz,
Sale
[ boccio @ 21.09.2004. 07:34 ] @
nisam bas siguran u ovo sto cu reci - ali mislim da zavisi i od SMTP servera. Ako to pokusas da poteras sa nekog shared hostinga mislim da ce te sendmail limitirati na (lupam) 500 mejlova / sat, ili tako nesto...s druge strane ako imas svoj licni mail server - vozi mishko
[ Jbyn4e @ 21.09.2004. 10:43 ] @
Nece, ovaj to ti nece poleteti sinko....
Zasto to kazem? Za mali broj mailova mozda ce ti i raditi kako treba, ali cim se poveca broj mailova, povecace se i vreme izvrsavanja skripte, a u php.ini treba da pogledas koliko ti je max vreme izvrsavanja skreipte - toliko vremena ce ti slati mail , a posle toga ce javiti timeout.
Dakle, ukoliko bi to zeleo da uradis a da ne zavisis od vremena izvrsavanja - trebalo bi da napravis "u letu" php fajlove koji ce iz npr. txt fajlova vuci po 10 mailova, proslediti ih i nastaviti na sledecem php fajlu sa po deset mailova i td.
Npr. prvi.php fajl vuce mailove, deli ih po deset i smesta u txt fajlove 1.txt, 2.txt .... pravi i zapisuje i zatim i poziva 1.php. 1.php salje mailove iz 1.txt, pravi 2.php na disku i poziva ga... itd itd, dok god ima maiova za slanje - na ovaj nacin valjda moze - nemoj da me drzis za rec. U svakom slucaju - za mailing liste zaduzeni su i takvi server - ne treba petljati php u to.
[ Dejan Topalovic @ 21.09.2004. 11:29 ] @
Zasto ne pogledas kako je uradjena neka newsletter skripta? Cak imas i negdje na netu objasnjeno kako se to radi.
Princip je da vadis iz baze npr. 10 email adresa i da onda u petlji saljes te mailove.
Na pocetku skripte stavi i set_time_limit(90);, gdje 90 oznacava 90 sekundi vremena dozvoljenog za izvrsavanje skripte.
Nakon petlje i slanja tih 10 emailova, saljes istoj skripti parametar, koji oznacava od kojeg broja treba da nastavi slanje. Npr., ako je poslano 10 emailova, parametar skripti dajes $_SERVER['PHP_SELF']?nastavi_od=$broj_poslanih_emailova.
Tada se skripta ponovo ucitava i radi proces slanja emailova u dijelovima. Naravno, zavisi i kakav hosting imas i koja podesavanja su na njemu, ali ovo sam ti uopsteno objasnio princip po kojem bi trebao da radis.
[ Jbyn4e @ 21.09.2004. 11:47 ] @
U ovo mi nije pallo na pamet - ovo je bolje resenje naravno!
[ Serb4EverBRE @ 21.09.2004. 17:48 ] @
Hvala vam puno na pomoci


Napravicu tako, nece biti problem, vazno mi je bilo samo da znam da ce raditi :)

Kad je zavrsim podelicu je sa vama ovde ako ikoga bude interesovalo

AKo ima jos nekih ideja, samo pisite pa cu pogledati :)