来自PHP的SQL查询的资源错误

时间:2013-09-05 20:38:59

标签: php mysql sql

这个论坛和php的新功能所以请放轻松。

我有一个PHP脚本,它处理来自数据库中多个mysql表的数据。我让所有其他查询工作正常,但由于某种原因,只要条件为真,这个就会抛出错误,以达到mysql_fetch_array()命令。我一直试图找出这个查询与其他查询的区别,但没有取得任何成功。

是否有人在以下代码段中看到任何可能导致以下错误的内容?

$errorFlag = 0;
$result = 0;
$counter = 0;
$sql = "SELECT * FROM Data WHERE Last_Update < DATE_ADD(NOW(), interval -1 MINUTE)";
while (!$result && $errorFlag == 0) {
  $result = mysql_query($sql);
  $counter = $counter + 1;
  if ($counter > 30) {
    $errorFlag = 1;
  }
}
if ($errorFlag == 1) {
  echo "#E01,".$counter.",".mysql_errno().":".mysql_error()."!";
}
if ($errorFlag == 0 && mysql_num_rows($result) > 0) {
  while(errorFlag == 0 && $row = mysql_fetch_array($result)) {
    if ($row['Last_Update_Alarm'] == 0) {
      $sql = "UPDATE $tbl_name SET Last_Update_Alarm='1', Status_Time='0' WHERE Machine_ID='$row[Machine_ID]'";
      $counter = 0;
      $result = 0;
      while ($result == 0  && $errorFlag == 0) {
        $result = mysql_query($sql);
        $counter = $counter + 1;
        if ($counter > 30) {
          $errorFlag = 1;
        }
      }
    }
  }
}

这是我得到的错误代码:

  

警告:mysql_fetch_array():提供的参数不是D中的有效MySQL结果资源:第33行的... \ test.php

第33行对应于带有fetch命令的行。我检查了资源类型和查询后的行数,两者都是预期的。

谢谢! 斯科特

0 个答案:

没有答案