我使用以下php代码来检查MySQL连接的数量
$connection=mysql_connect("localhost","$mysql_user","$mysql_pwd");
if (mysqli_connect_errno())
{ echo "NO CONNECTION"; }
else
{
unset ($result);
$result = mysql_list_processes($connection);
while ($row = mysql_fetch_assoc($result)){
$mysql_data[]=$row["db"];
}
mysql_free_result($result);
$n_connections=count($mysql_data)-1;
}
echo "$n_connections";
由于在PHP 5.5.0中不推荐使用mysql_connect,因此我使用
更改了$ connection$connection=mysqli_connect("localhost","$mysql_user","$mysql_pwd", "$mysql_db");
执行此更改后,$ n_connections不再返回正确的值,代码中出了什么问题?
谢谢
注意:php.net中的函数mysqli_list_processes没有帮助,我尝试了它并没有用。
注意2:这篇文章不是"如何将mysql更改为mysqli?" ,我的问题是替换" $ result = mysql_list_processes($ connection);"
答案 0 :(得分:1)
答案 1 :(得分:0)
这应解决问题并返回正确数量的数据库连接。
$connection=mysqli_connect("localhost","$mysql_user","$mysql_pwd", "$mysql_db");
if (mysqli_connect_errno())
{ echo "NO CONNECTION"; }
else
{
if ($result = mysqli_query($connection, "SHOW FULL PROCESSLIST")) {
$n_connections=mysqli_num_rows($result);
mysqli_free_result($result);
$n_connections=$n_connections-1;
}
}
echo "$n_connections";