为什么我在添加错误的用户名时没有收到错误?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (5)

我正在创建数据库和PHP之间的连接,当我添加错误的用户名(实际上,真正的用户名是root,我添加了rsdsoot)但仍显示我连接而不是显示错误。有什么理由吗?

$servername = "localhost";
$username = "rsdsoot";
$password = "";

$conn = mysqli_connect($servername, $username, $password);

if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
提问于
用户回答回答于

您可以mysqli_connect_error();用来确定连接是否有错误。


if( mysqli_connect_error() ) {
   print "Connection failed: " . mysqli_connect_errno() . " - " . mysqli_connect_error() ;
}else{
   print "Connected";
}

php.net /参考

通过php启用错误报告在脚本之上添加此功能。

error_reporting (E_ALL ^ E_NOTICE);
ini_set('display_errors','On');
用户回答回答于

尝试这个,尝试catch的方法:

public function connect($dbhost, $dbuser, $dbpass) 
{
    try 
    {
        $cxn = @mysqli_connect($dbhost, $dbuser, $dbpass);
    } 
    catch ( Exception $e )
    {
        print 'Could not connect to the mysql server: '. $e->getMessage() .'\n';
        exit($e->getMessage());
    }
}

另外,我已经构建了一个类来简化与MySql数据库的通信,并使执行查询更容易。试试看。这是我的OpenSource项目。

MySqlManager类PHP

扫码关注云+社区

领取腾讯云代金券