这是在localhost上为MySQL服务器创建连接的方式
$Connection = mysql_connect("localhost","root","");
但MySQL似乎忽略了我的用户名和密码,即使我使用一些废话用户名创建连接&密码:
$Connection = mysql_connect("localhost","nonsense-username","");
两种情况都给我$ Connection作为“mysql link的资源(39)”。这只有在密码为空时才会发生。当密码为空时,接受任何用户名是MySQL的默认行为吗?
但是当给出这样的“无意义用户名”时,它应该让$ Connection等于'false'。怎么了?
答案 0 :(得分:2)
我将假设您已在自己的计算机上设置MySQL服务器,而无需配置用户,权限或类似的东西。如果是这种情况,则原因可能是SQL安全模式。如果在php.ini文件中,sql.safe_mode设置为1,则PHP将使用默认值替换传递给mysql_connect()的任何参数。这肯定会解释这种行为。尝试查看phpinfo()以查看是否属实。
答案 1 :(得分:0)
在安装php-mysql后,您似乎还没有重新启动网络服务器。请重新启动它应该工作的网络服务器。 我花了两个小时调试,简单的解决方案是重启