如何显示链接计数器更改直播?

时间:2011-07-09 11:35:55

标签: php mysql

此代码执行的操作是从数据库中获取链接并将其与关键字进行比较(如果它比较KeywordCounter++,并且每次都LinkCounter++

我希望在它经过的每个链接后键入LinkCounter,但在我写的代码中,它只在循环结束后显示我(在所有链接交叉之后)。每次检查链接时如何查看LinkCounter

我怎样才能看到反击跳跃?

<?php //holdes the db connection include('Connect.php');
$KeyWord = 'googoo';
$LinkCounter = "0";
$KeywordCounter = "0";

$query = mysql_query("SELECT * FROM doalgo where Pass != '0'") or die(mysql_error());

while ($info = mysql_fetch_array($query)) {

    $id = $info['id'];
    $link = $info['link'];

    $num_rows = mysql_num_rows($query);

    mysql_query("UPDATE doalgo SET Pass = '1' WHERE id = '$id'");

    $CurrentFile = file_get_contents($link);

    if (!strpos($CurrentFile, $KeyWord)) {
        //nothing
    } else {
        mysql_query("UPDATE doalgo SET Posted = '1' WHERE id = '$id'");
        $KeywordCounter++;
    }

    $LinkCounter++;

    if ($id == $num_rows) {
        die();
    }
}
echo "<br />KeywordCounter: ".$KeywordCounter;
echo "<br />LinkCounter: ".$LinkCounter; 
? >

2 个答案:

答案 0 :(得分:0)

如果我正确理解您的问题,您希望网页立即显示,然后在SQL查询进度时不断更新LinkCounter显示?

如果这是正确的理解,要做到这一点需要AJAX。每次更新$ LinkCounter时,您的服务器都必须向Web浏览器发送持续更新,然后浏览器中运行的JavaScript将使用该信息更新显示。显然,这比你的脚本目前做的要复杂得多。这是一种完全不同的设计模式。

如果这是你想要学习的东西,那么有很多关于AJAX主题的书籍,或谷歌也可以帮助你。

答案 1 :(得分:0)

您可以更好地计算平均更新速度(例如每小时更新次数),并且每1小时向浏览器发送一个整数。
使用jquery,您可以使用该速度更改显示给用户的值。