このフォーラムと php は初めてなので、気楽にやってください。
データベース内の複数の mysql テーブルからのデータを処理する php スクリプトがあります。他のクエリはすべて正常に動作していますが、何らかの理由で、条件が true で 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(): 指定された引数は、33 行目の D:...\test.php の有効な MySQL 結果リソースではありません
行 33 は、fetch コマンドのある行に対応します。クエリの後にリソースの種類と行数を確認しましたが、どちらも期待どおりでした。
ありがとう!スコット