如何在mysql_result上避免mySQL的错误?

时间:2015-05-19 09:34:16

标签: php mysql

我使用

获取mysql结果
$back = mysql_result($query, 0);

但是当找不到任何内容时,我收到此错误:

Warning:  mysql_result() [<a href='function.mysql-result'>function.mysql-result</a>]: Unable to jump to row 0 on MySQL result index 2 in 

即使我使用if (!empty($back))

之类的内容,我仍然会收到错误消息

如何避免错误?欢迎任何替代方法

2 个答案:

答案 0 :(得分:0)

我会首先执行mysql_query()并在调用mysql_result之前检查是否返回了任何内容(如果是$ result)。

顺便说一句,你应该使用mysqli_query等,这些天早期的版本是不安全的......

答案 1 :(得分:0)

$sql = 'some query...';
$result = mysql_query($q);

if($result === false){
      throw new Exception(mysql_error($connection));
 }
if (mysql_num_rows($result) > 0) {
     //Process Result
      $back = mysql_result($query, 0);
   } else {
      // empty Result Set
   }

注意检查(!$ result) - 如果你的$ result是一个布尔值,它肯定是假的,这意味着有一个数据库错误,意味着错误是你的查询

您的错误是由查询未返回任何行 - 例如没有匹配。