本帖最后由 aoecal 于 2012-08-19 11:49:20 编辑

解决方案 »

  1.   

    把所有的id读取出来,放到一个数值里面,循环这个数组$sql = "select id from table";
    while($row[] = mysql_fetch_row(mysql_query($sql)));foreach($row as $key => $value)
    {
      $id = $value['id'];
    }
      

  2.   

    $str = "select * from table";
    $res=$con->query($str);
    while($row=$res->fetch_array())
      {
    ……}  
      

  3.   

    我按照2楼的方法 在 while($row[] = mysql_fetch_row(mysql_query($sql)));
    这句内存就溢出了...5555
      

  4.   

    就靠一句sql也可以解决的
    UPDATE table SET v = FLOOR( min值 + (max值 - min值 +1) * RAND( ) )
      

  5.   

    如果数据量大,可以限制id,,多分几步骤执行……
    数据量大的情况下,全部取出放php执行也是费时间、资源的
      

  6.   

    2楼的代码要改成下面这样,否则就陷入死循环了
    $result=mysql_query($sql);
    while($row[] = mysql_fetch_row($result));
      

  7.   

    $sql = "select id from ".$db_table;
    $result = mysql_query($sql,$con);
    while($row=mysql_fetch_object($result)){
                           $id=$row->id;
    echo $id."<br />";
    }根据楼主的代码,我给你写了这个输入此表内各种id,你把update语句丢入这个循环中即可,
    where id = $id 
    ~~~

    $sql = "update `".$db_table."' set cs= '".rand($summin,$summax)."' where id = '".$id."'";
    mysql_query($sql);
    这下明白了吗?