我刚刚将我的网站从测试域移动到实际域,我在PHP脚本中更改了数据库信息,但即使我三重检查我有正确的数据库,主机,我仍然会收到错误用户名和密码。我错过了什么吗?这是我用来连接的代码。数据库信息绝对正确。
$dbhost = "localhost";
$dbuser = "username";
$dbpass = "password";
function dbConnect($db='dbname') {
global $dbhost, $dbuser, $dbpass;
$dbcnx = @mysql_connect($dbhost, $dbuser, $dbpass)
or die('Database problem.');
if ($db!='' and !@mysql_select_db($db))
die('Database not available at the moment. Please try again in a couple of minutes.');
return $dbcnx;
}
然后我从脚本中调用函数dbConnect('dbname')
。我得到的错误是上面代码中的第二个错误,“数据库暂时不可用。请在几分钟后重试。”。
有人能看到我在这里失踪的东西吗?
编辑:
实际的MySQL错误是:
Access denied for user 'username'@'localhost' to database 'dbname'
答案 0 :(得分:2)
听起来这可能是权限问题。
尝试登录mysql并运行:
grant all on <your db name>.* to <your user>@localhost identified by '<your password>';
flush privileges.
答案 1 :(得分:0)
如果从代码中获取错误抑制(@),它可能会为您提供更多线索