2016-07-14 120 views
0

我对PHP相当陌生,我知道这是一个众所周知的问题,但我无法修复它。 根据mysql日志建立并立即关闭与数据库的连接。PHP致命错误:调用布尔型成员函数bind_param()

我附上了下面剪下的代码,谢谢你的帮助。顺便说一句,只有“真正”的服务器上出现此错误,使用XAMPP我没有问题,在所有...

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

地方'的var_dump($语句)返回的数组;'后第一线, 你看到了什么? – olegsv

+0

尝试$ rs = $ stmt-> bind_param(“ss”,$ g_usernameSql,$ g_pwSql); if($ rs){$ stmt - > execute();} – Dave

+0

@olegsv它打印假 – MoBau

回答

0

可能的原因是:$ conn->准备,因为它是失败的返回false。

$ stmt是错误的,而不是一个语句对象。你应该在使用它之前检查是否($ 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 
} 
相关问题