-2

为了保存我的网络爬虫位置,它爬了多少页,我尝试将它们保存在数据库中,以便下次它从停止的位置开始

首先我有 2 列 id 的表检查点并检查

我的第一步是从数据库中获取旧位置并将其存储在 $i

$result = mysql_query( "SELECT * FROM checkpoint" ) or die("SELECT Error: ".mysql_error());
while($ch_me = mysql_fetch_assoc($result))
{
    $i=$ch_me["check"];
            echo "<br>i value in loop ".$i;
            break;  // need just first check value in db
}

接下来我必须增加 $i 值并且必须将其更新到数据库中

while(1)
{   // doing work 
    $i++;
    // save i value in database
    mysql_query("UPDATE `checkpoint` SET `id`=1,`check`=$i WHERE 1");

}

现在 ia 面临的问题是更新查询......它无法将 $i 值更新到数据库 ????? 它第一次工作,然后当我下次运行时,不工作

4

1 回答 1

0

在哪里更新丢失

$result = mysql_query( "SELECT * FROM checkpoint limit 1" ) or die("SELECT Error: ".mysql_error());
$ch_me = mysql_fetch_array($result);
$i=$ch_me['check'];
$id = $ch_me['id'];
$i+=1;

mysql_query("UPDATE checkpoint SET check=$i WHERE id=$id");
于 2012-04-23T07:01:16.657 回答