Udsende mange mails gennem PHP
Hej eksperter.Jeg har lavet et system til Danske Spil; et anti-matchfixing-værktøj.
Administrator skal kunne udsende mails... men der kommer kun mails, når jeg tester op imod nogle få e-mail adresser.
Lige så snart jeg forsøger at sende til hele listen (156 stk), kommer der ingen mails, bortset fra til e-mail adressen i "To". Resten, der er angivet i BCC kommer ikke med.
Jeg kan lige bemærke, systemet tidligere har kørt med en for-løkke, der kørte 156 send-kommandoer. Den virkede, men ikke optimalt pga. noget timeout o.l.
Her er den vigtigste kode:
$emne = "ELMS: ".utf8_encode(mysql_real_escape_string($_POST['hometeam']))." vs. ".utf8_encode(mysql_real_escape_string($_POST['awayteam']));
$besked = "Dear ELMS member.\r\n\r\nA notification has been created on the match ".utf8_encode(mysql_real_escape_string($_POST['hometeam']))." vs. ".utf8_encode(mysql_real_escape_string($_POST['awayteam']))."\r\nPlease enter www.elms.ch to view the notification.";
$besked .= "\r\n\r\nBest regards\r\nThe European Lotteries Monitoring Team\r\n";
// To send HTML mail, the Content-type header must be set
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/plain; charset=us-ascii\r\n";
$headers .= "Content-Transfer-Encoding: 7bit\r\n";
// Additional headers
$fra .= "From: mail@elms.ch\r\n";
$til .= "BCC: ";
$listUsersQuery = mysql_query("SELECT username, email, name FROM elms_users");
$listUsersNum = mysql_num_rows($listUsersQuery);
$brugerliste = array();
// Vi skal sende alle mails på én gang. Derfor skal vi akkumulere alle modtagere, så serveren ikke hænger i håndbremsen.
for ($i=0; $i<$listUsersNum; $i++) {
$userrow = mysql_fetch_array($listUsersQuery);
//echo "<font color='#ffffff'>Send mail to ".$userrow['email']."</font><br>";
array_push($brugerliste, $userrow['email']);
$collapsedListe = implode(",", $brugerliste);
}
$til .= $collapsedListe."\r\n";
//echo nl2br($headers.$fra.$til);
mail("minemail@post.dk", $emne, $besked, $headers.$from.$to);
//mail("minemail@post.dk", $emne, $besked, "From:mail@elms.ch\r\nBcc: {$collapsedListe}");
}
