0

我想要的结果:完全加载一个网页,但完成后逐行输出MySQL查询。

说明:我希望有一个网页显示它应该显示的信息,但同时我希望它逐行显示它如何处理 MySQL 查询。

想象一下,您提交一个任务,一个脚本将向一群订阅者发送一封电子邮件。当您在网页上提交了该任务/脚本后,您想进入一个包含一些信息的新网页,并且在该页面上,您有一个表格,该表格正在以“实时”的方式添加行。处理完后添加一行。

这些列可以是 FIRSTNAME、LASTNAME、E-MAIL、PROCESSED。

应该显示该表,一次一行,您将在脚本处理完后在已处理列中获得订阅者和文本 OK(MySQL 查询)。

不确定我的解释是否足够清楚,请不要犹豫告诉我。

php ob_start可以实现吗?

4

2 回答 2

1

您的想法是使用 PHP 函数 ob_start(),您可以批量打印 50、100 或逐行。

    ini_set('display_errors', 1);
    error_reporting(E_ALL);
    ini_set('memory_limit', '512M');
    set_time_limit(0);
    ob_start(); //Object buffer
    //call a recursive function for batch processing
    processTask($pageNo=1);

     function processTask($pageNo=1){
            //perform task with page no 1, like using limit query , 
            //then call function the processTask with next page no if returned
            //row is not equal to zero

            //Must - calling below will out put on browser screen what is in echo statement 
            ob_flush();
            flush();
    }
于 2013-11-09T09:41:40.150 回答
1

我会使用 Javascript (ajax) 重复拉取最新的行,因为这会导致任何 HTTP 连接都是短暂的和独立的(我认为它们应该是)。

这是猜测,但我认为从长远来看,使用 ajax 会更好。

于 2013-11-09T09:52:13.460 回答