Heim >Backend-Entwicklung >PHP-Tutorial >PHP中使用mysqli_fetch_object的一个错误
<code> mysqli_select_db($con,"my_2db"); //选择操作库 $query='SELECT password FROM user WHERE account='.$account;//定义sql查询语句 $result=mysqli_query($con,$query); //发送sql查询 if($obj=mysqli_fetch_object($result))//取查询完的结果 </code>
数据库中只有一条记录
当我查询account='13'时,按我php代码中返回的密码错误的提示,当我查询account='1a'时报错
报错如下
请问下是我数据库有问题还是其他一些原因,我在phpmyadmin中使用语句
<code>SELECT password FROM user WHERE account='13' </code>
和
<code>SELECT password FROM user WHERE account='1a' </code>
都是相同的结果,并未查询上的不妥
<code> mysqli_select_db($con,"my_2db"); //选择操作库 $query='SELECT password FROM user WHERE account='.$account;//定义sql查询语句 $result=mysqli_query($con,$query); //发送sql查询 if($obj=mysqli_fetch_object($result))//取查询完的结果 </code>
数据库中只有一条记录
当我查询account='13'时,按我php代码中返回的密码错误的提示,当我查询account='1a'时报错
报错如下
请问下是我数据库有问题还是其他一些原因,我在phpmyadmin中使用语句
<code>SELECT password FROM user WHERE account='13' </code>
和
<code>SELECT password FROM user WHERE account='1a' </code>
都是相同的结果,并未查询上的不妥
发现哪里错了,查询语句错了,这句,
<code> $query='SELECT password FROM user WHERE account='.$account; </code>
当含有字母时要注意是字符的写法
<code> $query='SELECT password FROM user WHERE account='.'"'.$account.'"'; </code>
有一种情况:mysqli_query
查询account='1a'时,查询是失败的,此时mysqli_query
返回一个布尔值false
,而mysqli_fetch_object
的第一个参数是一个mysqli_result
对象
你可以执行查询后,var_dump($result)
看看查询结果