gpt4 book ai didi

php - 无法通过 PHP 连接到 MySQL

转载 作者:可可西里 更新时间:2023-11-01 06:42:24 27 4
gpt4 key购买 nike

似乎是一个初学者问题,但我似乎无法弄清楚...

我有全新的 Windows 7 x64/Apache 2.2/PHP 5.2/MySQL 5 x64 安装。
其实我试过 IIS 和 Apache。

但是这段 PHP 代码不起作用:

<?
$hostname = "localhost";
$username = "xxx";
$password = "xxx";

$db = mysql_connect($hostname,$username,$password) or die("die");
?>
  • 我可以使用直接命令行将 OK 连接到 MySQL 数据库,当然使用相同的登录名/密码。
  • 我仍然可以使用相同的登录名/密码通过网络访问 MySQL 数据库。
  • PHP 以其他方式工作(echo("hello world") 工作)。
  • 在 php.ini 中启用了 MySQL 扩展。事实上,如果我禁用它,我会得到 Call to undefined function mysql_connect()
  • Windows 防火墙已禁用。
  • 没有错误信息。它只是不返回任何东西。 600 秒后超时:

        Fatal error: Maximum execution time of 60 seconds exceeded in
    C:\Ampache\try.php on line 6

有什么线索吗?

最佳答案

等等等等……我想我找到了……

RTM 他们说 :-) 都在 http://php.net/manual/fr/function.mysql-connect.php :

Bruce Kirkpatrick - 28-Oct-2009 05:48 :
On Windows Vista or above, an entry in the Windows/System32/drivers/etc/hosts file causes mysql_connect() connections to "localhost" to timeout and never connect. This happens on php 5.3 and above since it now uses mysql native driver which has changed it connection behavior compared to libmysql.dll in previous versions. It is not a PHP bug, but definitely a configuration issue for users on new windows systems.

To get around this, you must remove the entry like this:
::1 localhost

and make sure you still have:
127.0.0.1 localhost

Also, you could change the code to connect to the ip instead, but that is inconvenient if you have many web sites.

This issue occurs on Windows Vista, Windows 7 and Windows Server 2008.

事实上它适用于

$host = "127.0.0.1";

感谢您的关注!

关于php - 无法通过 PHP 连接到 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1871112/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com