1

次の簡略化されたwhileループコードがあります。

while($row = mysql_fetch_array($result)) {

    mail($to, $subject, $newMessage, $headers);

}

ループの進行中に「100からメール1を送信」、「100からメール2を送信」などのテキストを表示することはできますか?whileループが終了したら、テキストをクリアして、たとえば「すべてのメールが送信されました!」と表示します。

わかりやすく説明する方法がわかりません。ループに入るたびにそのテキストを印刷するのが簡単ですが、ページには100個のテキストが印刷されます。

ループ中に更新されてから消えるフローティングdivのようなものが欲しいのですが。

私が多かれ少なかれ自分自身を明確にしたことを願っています!

ありがとう!

4

1 に答える 1

0

記入する必要がありますが、jQueryajaxの例のように基本を理解できます。

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スクリプトへの直接呼び出しなど)、およびすべてがユーザーによって簡単に中断される可能性があるという事実に対処する必要があります。

于 2012-08-25T12:56:00.263 に答える