PHP MySQL连接错误 - 未定义的方法mysqli

25 浏览
0 Comments

PHP MySQL连接错误 - 未定义的方法mysqli

我目前正在尝试创建一个登录系统,在xampp中一切正常,但当我将其上传并连接到托管的数据库时,它就会出现错误。

错误信息如下:

PHP致命错误:在/path/to/public/gnpfonline/Beta/register.php的第19行找不到方法mysqli::error()

第19行是$result = $mysqli->query("SELECT * FROM users WHERE email='$email'") or die($mysqli->error());。我不太明白问题在哪里,因为在xampp中运行良好,但在托管的SQL数据库中却不行,我尝试了两个不同的网站,它们都不工作。

0
0 Comments

你的问题是mysqli中没有error()这样的函数。你的代码应该是:

$result = $mysqli->query("SELECT * FROM users WHERE email='$email'") or die($mysqli->error);

……这样可以访问你的$mysqli对象的error属性(一个字符串)。它不是一个函数。

在你的托管数据库中失败的原因是在尝试运行查询时实际上出现了错误。如果你修复错误显示代码,你应该能看到真正的错误。

(你的错误处理代码在本地和远程机器上都有bug;只是因为本地$mysqli->query()没有错误,所以PHP从未运行过你的错误处理代码。只有在远程服务器上才会失败。)

部署到不同主机后出现错误的典型原因是在你的托管数据库中拥有错误的数据库连接配置。当你修复错误检查代码时,你会得到更多信息。

0
0 Comments

问题出现的原因是使用了错误的方法来获取mysqli的错误信息。

解决方法是使用正确的方法来获取mysqli的错误信息。

具体的代码如下:

printf("Errormessage: %s\n", $mysqli->error);

以上就是解决PHP MySQL连接错误-未定义的方法mysqli的原因和解决方法。

0