2

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

$con = mysql_connect("", "", "");

if (!$con) {
  die('Could not connect: ' . mysql_error());
}

mysql_select_db("", $con);

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

怎么做到呢?

4

3 回答 3

14

像这样做

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

或者试试这个

echo $con ? 'connected' : 'not connected';
于 2012-09-01T06:04:19.430 回答
2

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

无论如何强烈建议这样做,因为旧库正在被弃用,但也会使您的问题更容易回答。(您也可以使用 PDO 库,其答案将类似,但对于这个答案,我将坚持使用 mysqli 为简单起见)

使用该mysqli库,您可以获得一个包含数据库连接的变量,您可以随时检查它。

$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

于 2012-09-01T07:11:18.723 回答
0

尝试使用mysql_ping

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

像这样的东西应该可以帮助你

if(mysql_ping($con)) 
  echo 'connected'; 
 else 
  echo 'disconnected';
于 2012-09-01T06:25:41.220 回答