如何检查我是否';m已连接到数据库


How do I check if I'm connected to database?

这是连接到mysql数据库的代码:

$con = mysql_connect("", "", "");
if (!$con) {
  die('Could not connect: ' . mysql_error());
}
mysql_select_db("", $con);

我想根据状态回显"已连接"/"已断开"。

如何做到这一点?

像这样做

if ($con) {
  echo 'connected';
} else {
  echo 'not connected';
}

或者试试这个

echo $con ? 'connected' : 'not connected';

首先,使用mysqli_xxx()函数,而不是旧的过时的mysql_xx()函数。

强烈建议这样做,因为旧库正在被弃用,但也会使您的问题更容易回答。(你也可以使用PDO库,它的答案是相似的,但为了简单起见,我会使用mysqli)

使用mysqli库,您可以获得一个包含DB连接的变量,您可以在任何时候对其进行检查。

$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'my_db');

现在,您可以查询$mysqli变量来了解发生了什么。

if ($mysqli->connect_error) {
    die('Connect Error (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error);
}

稍后,您可以使用ping命令查询变量:http://www.php.net/manual/en/mysqli.ping.php

$mysqli->ping();

如果需要更多信息,可以使用stat命令:http://www.php.net/manual/en/mysqli.stat.php

尝试使用mysql_ping

mysql_ping—ping服务器连接,如果没有则重新连接连接

像这样的东西应该能帮助你

if(mysql_ping($con)) 
  echo 'connected'; 
 else 
  echo 'disconnected';