Überkinger
Lieutenant
- Registriert
- Juli 2010
- Beiträge
- 600
Hallo,
ich setze den PHPMailer ein, um meine Kunden täglich mit zwei Newslettern zu versorgen (Kunden wissen, dass sie zweimal am Tag Newsletter erhalten). Sie kaufen entsprechende Abos. Es geht hier um den Versand an ca. 1000-2000 Kunden.
Ich verschachtele den Versand, je nach Kundenattribute via while schleife.
Frage: Jede while-Schleife wird doch erst komplett durchlaufen, bevor die nächste Schleife startet?
Anfangs wurde die whileschleife so bei jedem Kunden gestartet:
Der nächste Versuch wird mit obigen Beispiel
gestartet. Ich vermute, dass dass Array gar nicht geelert worden ist und es in der zweiten while-schleife der inhalt nochmals zum Versand herangezogen wurde.
ich setze den PHPMailer ein, um meine Kunden täglich mit zwei Newslettern zu versorgen (Kunden wissen, dass sie zweimal am Tag Newsletter erhalten). Sie kaufen entsprechende Abos. Es geht hier um den Versand an ca. 1000-2000 Kunden.
Ich verschachtele den Versand, je nach Kundenattribute via while schleife.
PHP:
// Versand an Kunde A - HTML
if ($a==1) {
while ($row_a = mysql_fetch_array($result_a)) {
$username = $row_a["forename"] . ' ' . $row_a["nickname"] . ' ' . '['.$row_a["number"].']';
$mail->AddAddress($row_a["email"], "$username");
if(!$mail->Send()) {
echo "Mailer Error (" . str_replace("@", "@", $row_a["email"]) . ') ' . $mail->ErrorInfo . '<br>';
} else {
echo "Message sent to :" . $username . ' (' . str_replace("@", "@", $row_a["email"]) . ')<br>';
}
$mail->ClearAddresses();
$mail->ClearAttachments();
}
}
// Versand an Kunde B - PDF
if ($b==1) {
while ($row_b = mysql_fetch_array($result_b)) {
$username = $row_b["forename"] . ' ' . $row_b["nickname"] . ' ' . '['.$row_b["number"].']';
$mail->AddAddress($row_b["email"], "$username");
if(!$mail->Send()) {
echo "Mailer Error (" . str_replace("@", "@", $row_b["email"]) . ') ' . $mail->ErrorInfo . '<br>';
} else {
echo "Message sent to :" . $username . ' (' . str_replace("@", "@", $row_b["email"]) . ')<br>';
}
$mail->ClearAddresses();
$mail->ClearAttachments();
}
}
Frage: Jede while-Schleife wird doch erst komplett durchlaufen, bevor die nächste Schleife startet?
Anfangs wurde die whileschleife so bei jedem Kunden gestartet:
PHP:
while ($row = mysql_fetch_array($result_a)) {
}
while ($row = mysql_fetch_array($result_b)) {
}
Der nächste Versuch wird mit obigen Beispiel
PHP:
($row_a / $row_b)
Zuletzt bearbeitet: