La pagina news_prova ha tutto HTML, più lo script che ti ho inviato prima ed il metatag che fa refreshare la pagina ogni 10 secondi.
Script che invia le mail:
Codice PHP:
$db_selection = mysql_select_db($database_jacky, $jacky) or die ("Selezione del database fallita
");
$query = "SELECT * FROM prova WHERE inviato='no' LIMIT 0,50";
$result = mysql_query ($query, $jacky) or die ("query fallita");
while ($riga = mysql_fetch_row($result)) {
$id=$riga[0];
$inviato="si";
$tipo_email = "MIME-Version: 1.0\nContent-type: text/html; charset=utf-8"; $oggetto = "E' solo una prova";
$destinatario = "jyttjtjytjyjyyt@libero.it";
$headers = "From: Mia azienda <mia@azienda.it>\n$tipo_email";
$headers .= "\r\nBcc: $riga[1]\r\n\r\n";
$headers .= "\r\nX-Mailer: PHP/" . phpversion();
$messaggio = " <html> <body>
<table align=\"center\" width=\"600\" border=\"0\"bordercolor=\"#FF9900\"> <tr> <td>
<a href=\"http://www.miaazienda.it/rghgurrg/avvocati\" title=\"Il portale per personalizzare gli strumenti per l'attività legale\" target=\"_blank\"> <img src=\"http://127.0.0.1/altri/miaazienda/rghgurrg/img/invio_news_img/pinguini.jpg\" border=\"0\"/> </a> </td> </tr> </table> </body>
</html> ";
mail($destinatario, $oggetto, $messaggio, $headers);
echo "Email inviata a $riga[1]
";
$query_uno = "UPDATE prova SET inviato='$inviato' WHERE id='$id'"; $result_uno = mysql_query ($query_uno, $jacky);
}
Metatag:
codice:
<META HTTP-EQUIV="Refresh" content="10;url=news_prova.php">
Come puoi vedere, lo script è quello che mi hai corretto tu e devo dire che così già quasi ci siamo. Fa quello che voglio io; cioè invia le mail a blocchi di 50 e fa un update sulla tabella del DB, cambiando lo stato del campo inviato da no a si.
Ciò che mi occorrerebbe per chiudere, sarebbe una stampa a video che conti le mail inviate, rispetto al totale.
Mi spiego meglio:
invio primo blocco, al termine u na cosa del tipo "50 di 1000 mail inviate correttamente"
refresh della pagina, invio secondo blocco ed al termine "100 di 1000 mail inviate correttamente" e così via fino ad arrivare a 1000 di 1000 mail inviate correttamente e stoppare il refresh.
Chiedo troppo?