0

我的系统是 Windows XP SP2,我的服务器是 Microsoft Webmatrix。PHP 运行良好,但是当我尝试添加数据库连接时,它会给出 http 错误 500.0。发出错误的代码

$db = new MySQLi('localhost', 'my_login', 'my_pass', 'db_name');
if ($db->connect_errno()) {
    printf("Connect failed: %s\n", $db->connect_error());
    exit();
}

当我删除它时,页面加载正常。我该如何解决?

4

2 回答 2

5

mysqli::connect_errno并且mysqli::correct_error 是属性,而不是函数

$db = new MySQLi('localhost', 'my_login', 'my_pass', 'db_name');
if ($db->connect_errno) {
    printf("Connect failed: %s\n", $db->connect_error);
    exit();
}

因此,您的 PHP 将产生一个错误,并且您已将display_errors其关闭,因此它只会进入服务器日志并向用户显示一般 500 错误。


您还应该注意文档中的说明:

mysqli->connect_error 属性仅在 PHP 版本 5.2.9 和 5.3.0 中才能正常工作。

您使用的是 PHP 5.2.9 或 5.3.0 或更高版本吗?


您必须找到您的服务器日志以便将来执行故障诊断。

根据 Wikipedia,Microsoft WebMatrix 是一个使用 IIS Express 实现网络服务器功能的软件包。查找 IIS Express 存储其日志的位置将我们引向此问答;在您的用户目录(或系统管理员帐户的目录)中查找名为“IISExpress”的目录。

于 2011-08-09T09:23:52.657 回答
0

错误代码 500 表示存在内部服务器错误 - 通常这意味着某些服务器配置错误。维基百科有关于所有http 状态代码的概述。正如其他人已经提到的:如果不查看错误日志,很难为您提供帮助。我还要确保数据库凭据是正确的。

于 2011-08-09T08:19:16.963 回答