mysql查询报错_php的mysql查询报错,快进来看看

有两段php代码报错。但是在另一个服务器中却没报错。不知道什么原因,代码如下:

$termidc=mysql_result(mysql_query("SELECT term_id FROM $table_term_taxonomy WHERE term_taxonomy_id='$termid' AND taxonomy='category' LIMIT 1"),0);

$termnamec=mysql_result(mysql_query("SELECT name FROM $table_terms WHERE term_id='$termidc' LIMIT 1"),0);

报错内容是

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 21 in /post.php on line 217

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 22 in /post.php on line 218

报错的PHP版本:5.3.3

未报错的PHP版本:5.4.45

结果集为空自然就报错了。

没报错可能是配置文件配置了不显示错误信息。

mysql_result

之前,可以先判断下获取到结果集的数量。

e6535a196b93e5208109c3afa12280fa.png

看手册mysql_result php4以上版本

是不是因为没查询到数据

if(mysql_num_rows($result) > 0) { ... }

也可以这么写:

$result= mysql_query("SELECT ...");

if (mysql_num_rows($result) == 0) {

// No result

} else {

// Show result

}

报错显示的很清楚了,你sql语句的结果没有0行数据,也就是说

"SELECT name FROM $table_terms WHERE term_id='$termidc' LIMIT 1"

这个语句没有返回结果集

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值