Korišćenje mail funkcije u petlji nije preporučljivo. Zašto ne koristiš BCC?
Primer:
Code:
$adrese = array (
'email-11@email.com',
'email-22@email.com',
'email-33@email.com',
'email-44@email.com',
'email-55@email.com'
);
//Napravi listu za BCC
$lista = implode("," , $adrese);
//I na kraju slanje maila
mail(
'tvoj-email@email.com',
'Naslov za email',
'Email poruka',
"From: tvoj-email@email.com\r\nBcc: ($lista)"
);
Dakle, uvek prvo "pripremiš" funkciju ili upit pa tek onda izvršiš van petlje. Isto tako radiš i sa UPDATE funkcijom kada označiš koji su mailovi poslati i datum slanja (pošto je preporučljivo stavljati do 50-100 maila u jednom ciklusu).
UPDATE može da izgleda ovako. Prvo izvučeš mailove korisnika iz baze gde je datum slanja manji od određenog vremena, ili ako koristiš newsletter možeš staviti ID newslettera (last_newsletter_id) i tada tražiš korisnike koji su označeni za slanje tog newslettera (vrednost 1 poslato, vrednost 0 na čekanju za slanje).
Pošalješ 50 mailova i pripremiš upit za UPDATE funkciju.
Code:
UPDATE users SET `last_newsletter_id` = 'ID', `send` = '1', `date` = 'NOW()'
WHERE (`user_id` = 1 AND `user_id`=2...i tako 50 ID-eva u svakom ciklusu)
AND `send` = 0;
I hope I didn't brain my damage - Homer
if (wife.position == kitchen) {return sandwich};