我有以下脚本,它在我的本地机器(XAMPP v3.1.0 php v.5.4.7)上工作得很好,但是当我上传到我的web服务器(Bluehost php v5.4.13)时,它不工作。
我的表很好&我提供的数据是有效的。
// Connect to DB
$mysqli = new mysqli("localhost","{USER_NAME}","{PASSWORD}","{TABLE_NAME}");
// Escaped post variables before SQL lookup
// $email is valid - "john@john.com";
$escapedEmail = $mysqli->real_escape_string($email);
$retrievedPassword = "";
$getUserPasswordQuery = "Select * FROM User Where Email='{$escapedEmail}'";
$loggedInUser = null;
if ($getUserPasswordResult = $mysqli->query($getUserPasswordQuery);)
{
echo "GOT HERE";
// Query was successful
}
$getUserPasswordResult->free(); // Line 66 (See below)我是,不是获取echo语句,而是在日志中获取以下内容的am (如果查询不能工作,这是可以理解的)。
Call to a member function free() on a non-object in .../script.php on line 66有人能解释一下这一点吗?也许为什么它会在本地服务器上工作&而不是在野外。而且,我这样做是正确的方式还是有一个更防弹的范例?
谢谢!
发布于 2013-04-17 18:55:56
在测试之外调用free来查看是否正确定义了该变量:
if ($getUserPasswordResult = $mysqli->query($getUserPasswordQuery);)
{
echo "GOT HERE";
// Query was successful
$getUserPasswordResult->free(); // Line 66 (See below)
}https://stackoverflow.com/questions/16067857
复制相似问题