0

我没有与 phpMyAdmin 的连接问题。我的问题是关于我自己的用于连接 mySQL 服务器的脚本。我这样做就像手册说的那样:

new MySQLi($host, $user, $pass, $db);

但是,如果服务器关闭,则脚本会在此时挂起,直到出现超时错误。当我尝试打开 phpMyAdmin 时不会发生这种情况,它会立即返回一个错误 (#2002)。我希望对我的代码做同样的事情,实现从超时错误和错误处理中逃脱。我正在考虑查看 phpMyAdmin 代码,看看他们是如何做的,但由于它的支持在这里,这可能对其他开发人员有用(不是因为我懒惰),我决定问一个问题。

那么,有什么线索吗?事件处理?一些异步技术?

4

3 回答 3

1

如果我不查看 PhPMyAdmin 代码,我建议将 mysqli 超时设置为尽可能低。

$mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT, 1)

但是,我仍然希望 PhPMyAdmin 以防万一他们有更好的解决方案。

于 2013-10-16T17:48:14.637 回答
1

我假设您的 phpMyAdmin 配置为使用 mysqli 扩展。在当前 4.0.8 版本中,在函数 PMA_DBI_connect() 和 PMA_DBI_real_connect() 中查看 library/dbi/mysqli.dbi.lib.php

于 2013-10-16T17:59:24.423 回答
0

这是localhost中sql连接的coorect格式

<?php
$con = mysql_connect('localhost','root','') or die("Error in connection! ");
?>

现在它看起来像你为它分配变量,如果是这样的话

$hostname="localhost";
$username="root";
password="";

<?php
$con = mysql_connect('$hostname','$username','$password') or die("Error in connection! ");
?>
于 2013-10-16T18:55:17.480 回答