我的Java类总是转到else语句,即使我放入了正确的细节并调用了正确的字段。请帮帮我。
下面是我的代码。getintents
没有问题,我不知道问题在哪里。
From manual on mysqli_query
失败时返回FALSE。对于成功的SELECT, SHOW, DESCRIBE或EXPLAIN查询,
mysqli_query()
将返回一个mysqli_result对象。对于其他成功的查询,mysqli_query()
将返回TRUE。
如果你看一下手册中的类型比较真值表,你会看到false > 0 === false
,这意味着如果条件总是为假,那么mysqli_query()
总是返回假,这意味着mysqli_query()
是总是每次调用该查询都失败。
您应该始终使用var_dump()
调试PHP中的变量,因为它提供了比echo
, print
或print_r
更有用的信息,因为print false
, print_r(false)
和echo false
都没有输出,这对于调试目的没有用处,但var_dump(false)
有。
在你的情况下,最有可能的原因是你的SQL语法错误,因为你盲目地将输入拼接到你的SQL代码中,没有适当的转义或使用准备好的查询。
当你的查询失败时,你也可以检查mysqli::$error
从PHP数据库中获得更多有用的错误信息。