我会再次尝试这一点,但没有输入错误....我正在使用MySQLi连接并使用故意错误的连接变量来触发错误。
按预期工作:
$conn = mysqli_connect("localhost","x","x","x");
if (mysqli_connect_errno()) {
echo "Couldn't establish database connection blah blah";
}
这应该完全相同,但它显示“无法获取MySQLi”警告:
$conn = new mysqli("localhost","x","x","x");
if ($conn->connect_errno) {
echo "Couldn't establish database connection blah blah";
}
当连接细节良好时,两种方法都很好,尽管这不是重点。
答案 0 :(得分:1)
这在某些旧版本的PHP中无法正常工作。
如果您在5.2.9之前使用的是PHP版本,那么$conn->connect_error
(我认为$conn->connect_errno
}方法也无法正常运行,您必须使用mysqli_connect_errno()
。
mysqli-> connect_error属性仅在PHP 5.2.9和5.3.0版本中正常工作。如果需要与早期PHP版本的兼容性,请使用mysqli_connect_error()函数。
// May need to use the procedural method, even in OO context...
$conn = new mysqli("localhost","x","x","x");
if (mysqli_connect_error()) {
die('Connect Error (' . mysqli_connect_errno() . ') '
. mysqli_connect_error());
}