如何避免警告信息

时间:2012-11-21 08:55:25

标签: php mysql

  

可能重复:
  Warning: mysql_fetch_* expects parameter 1 to be resource, boolean given error

Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in /home/content/97/9548797/html/backuptestmp/index.php on line 344

语法:

$table3right = mysql_query("SELECT username FROM users where parent_id=$GDs[4]"); 

 $table3right3 = mysql_fetch_row($table3right);  

 while( $row = mysql_fetch_row( $table3right) ){ $VDs[] = $row[0]; } 

 $table3r1 =  $table3right3[0];

如何避免警告信息。

3 个答案:

答案 0 :(得分:0)

只需添加if语句即可检查sql何时返回内容并以无错误结束。

$table3right = mysql_query("SELECT username FROM users where parent_id=$GDs[4]");
if ($table3right && mysql_num_rows($table3right)) {
    $table3right3 = mysql_fetch_row($table3right);
    while( $row = mysql_fetch_row( $table3right) ){ $VDs[] = $row[0]; }
    $table3r1 =  $table3right3[0];
} else { 
 //... 
}

注1:mysql_*函数已弃用。请使用PDOmysqli_*

注意事项2:您在开始mysql_fetch_row()循环之前完成了while() 。好像你需要删除这一行。

答案 1 :(得分:0)

你不能在这样的引号中使用数组($ GDs [4])。

$table3right = mysql_query("SELECT username FROM users where parent_id='" . $GDs[4] . "'"); 

 $table3right3 = mysql_fetch_row($table3right);  

 while( $row = mysql_fetch_row( $table3right) ){ $VDs[] = $row[0]; } 

 $table3r1 =  $table3right3[0];

答案 2 :(得分:-2)

用于避免警告消息使用

error_reporting(0);