在PHP循环中显示进度文本


Showing progress text while inside PHP loop

我有以下简化的while循环代码:

while($row = mysql_fetch_array($result)) {
    mail($to, $subject, $newMessage, $headers);
}

循环进行时是否可以显示文本,例如"从100发送电子邮件1",然后"从100发电子邮件2",等等。。。?while循环结束后,清除文本并显示例如"All mail was sended!"。

我不知道如何更好地解释它,我可以很容易地做的是,每次我们进入循环时都打印出文本,但页面最终打印出100条文本。

我想要一个浮动div,它在循环中更新,然后disapers。

希望我已经把自己说清楚了!

谢谢!

您必须填写,但这样您就可以获得基本信息,例如jQuery ajax:

Javascript:

var count = 0;
function sendNextEmail(){
    $.ajax({
        url : 'send-email.php?count=' + count,
        response : function(response){
            //TOTO : update UI
            count++;
            sendNextEmail();
        }   
    });
}

PHP send-email.PHP:

$count = intval($_GET['count']);
//TODO : PHP code to send count-th email

编辑:您需要处理潜在的安全问题(输入参数、直接调用PHP脚本…),以及整个过程可能很容易被用户中断的事实。