PHP fatal error : Call to a member function bind_param() on boolean

标签 php mysql

我对 PHP 相当陌生,我知道这是一个众所周知的问题,但我无法修复它。 根据mysql日志,与数据库的连接已建立并立即关闭。

我附上了下面截取的代码,感谢您的帮助。顺便说一句,这个错误仅发生在“真实”服务器上,使用 XAMPP 我完全没有问题......

$stmt = $conn->prepare("SELECT UID FROM USERS WHERE username = ? and password = ?");
$stmt->bind_param("ss", $g_usernameSql, $g_pwSql);

最佳答案

可能的原因是:$conn->prepare 由于失败而返回 false。

$stmt 为 false 并且不是语句对象。在使用它之前你应该检查 if ($stmt === false) 。

现在看看为什么失败,检查 $conn->errorInfo() 返回的数组 (假设 $conn 是一个 PDO 实例)

$stmt = $conn->prepare("SELECT UID FROM USERS WHERE username = ? and password = ?");
if ($stmt === false) {
   var_dump($conn->errorInfo());
} else {
   // do stuff
}

关于PHP fatal error : Call to a member function bind_param() on boolean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38374359/

相关文章:

php - 通过Codeigniter从MySQL表中获取数据

php - 我想计算表中一行中的所有数字?

php - MySQL 查询不关心用户输入之一

php - 如何使sql查询动态化?

mysql - INSERT INTO SELECT 不起作用

MySQL查询异常

php - 如何解析url响应?

php - Yii 和 cron 作业

c# - 尝试插入数据表的数组值时出现 SQL 语法错误

mysql强制发现的结果顺序与IN子句的顺序匹配