Ciao a tutti, ho creato un gestionale in php + mysql per la gestione di una newsletter.
Ho la tabella degli utenti con i campi "stato" che è 1 o 0 a seconda che sia attivo o disattivato, ed il campo "inviata" che aggiorno ogni volta che invio la mail all'utente corrispondente. (All'inizio sono tutte zero, poi man mano che invio mi trovo 1)
Quindi facendo delle select sullo stato so quante email devo inviare in tutto, e facendo la select sul campo "inviata" so a che punto sto.
Ho creato uno scriptino php che fa appunto questo lavoro: si collega al database e mi dice quante email ho inviato (facendo la query sul campo "inviata").
Nella pagina che provvede all'invio ho messo:
Codice PHP:
<script type="text/javascript" src="js/mootools.js"></script>
<script language="javascript">
var request = new Request({
url: 'ajax_stato_invii.php',
method: 'get',
update: 'refresh-me',
onComplete: function(response) {
$('divid').set('html',response);
}
})
var doRefresh = function() {
request.send();
};
doRefresh.periodical(500);
</script>
<div id='divid'></div>
e a seguire il loop che provvede ad inviare tutte le mail.
Il problema è che l'output della pagina avviene a newsletter inviata, quindi non ottengo neanche l'output ajax finchè le mail non sono tutte inviate.
Se invece eseguo l'invio in una finestra e monitoro il tutto in un'altra, funziona perfettamente (incrementa il valore "inviate" man mano che va avanti).
Come posso risolvere???
Grazie! ;-)