Jeg plejer normalt, at bruge sleep funktionen, så den holder en lille pause, hver gang den sender. Det virker i hvert fald fint her, også selvom den skal sende til 1500 brugere - det tager bare et stykke tid, da den laver sleep-funktionen. Men what ever, hos mig virker det ganske godt, du kan vel selv prøve? :-)
Eksempel:
<?php
$hent = mysql_query("SELECT email FROM brugere"); /** henter e-mails fra tabel **/
while ( $row = mysql_fetch_assoc ( $hent ) ) /** udskriver dem alle **/
{
if ( mail($row['email'],$subject,$besked) )
{
/** indsæt til mysql, fordi nu er den true, og ER sendt **/
flush();
sleep(1); /** venter 1 sekundt, før den går videre **/
flush();
echo $row['email'] . " blev sendt <strong>korrekt</strong><br />\r\n";
} else {
/** indsæt til mysql, fordi nu er den false, og IKKE sendt **/
flush();
sleep(1); /** venter 1 sekundt, før den går videre **/
flush();
echo $row['email'] . " blev sendt <strong>ukorrekt</strong><br />\r\n";
}
?>
--
www.php.net/flush ----
www.php.net/sleepNormalt, ved det eksempel jeg lige har givet dig, så siger vi "var8" er "webudvikleren@gmail.com"
if ( mail(var8,"test subject","besked") ) {
Hvis "mailen var8 ( webudvikleren@gmail.com )" er sendt, så skal den
{
/** noget **/
}
Hvis den ikke sender, så kan det skyldes en ukorrekt e-mail adresse.