【发布时间】:2015-12-09 18:38:29
【问题描述】:
我已经尝试通过 PHP 连接到我的数据库几个小时了,但没有成功。我的 PHP 代码如下所示:
<?php
ini_set('display_errors', 'On');
$hostname = 'localhost';
$username = 'root';
$password = '';
function testdb_connect($hostname, $username, $password) {
$db = new PDO("mysql:host=$hostname;dbname=asdf", $username, $password);
return $db;
}
try {
$db = testdb_connect($hostname, $username, $password);
echo 'Connected to database';
} catch(PDOException $e) {
echo $e->getMessage();
}
?>
我已经尝试过的:
- 检查 'root' 是否配置为 'localhost' (Y)
- 检查 root@localhost 是否有 Grant_priv/Super_priv 权限(Y 两者都适用)
- 检查 Apache/MySQL 是否正在运行(两者都是 Y)检查我的 PHP 是否运行
- 代码错误,即我遗漏了一些东西 (N)
有什么想法可以解决问题吗?提前致谢!
编辑:
非常抱歉,我今天经常看到错误信息,我忘了在这里提及:
SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)
重新编辑:
这里是我创建的用户的 php 代码:
<?php
ini_set('display_errors', 'On');
$hostname = 'localhost';
$username = 'myUserName';
$password = 'thatUserPassword';
function testdb_connect($hostname, $username, $password) {
$db = new PDO("mysql:host=$hostname;dbname=asdf", $username, $password);
return $db;
}
try {
$db = testdb_connect($hostname, $username, $password);
echo 'Connected to database';
} catch(PDOException $e) {
echo $e->getMessage();
}
?>
错误信息:
SQLSTATE[HY000] [1045] Access denied for user 'myUserName'@'localhost' (using password: YES)
【问题讨论】:
-
您能提供更多信息吗?你遇到了什么错误?
-
没有确切的错误信息,我们帮不上什么忙。
-
@Quentin 是否对所有答案投了反对票?
-
我猜@maytham-ɯɐɥıλɐɯ 我们的答案必须被表达出来,以便处理每一个可以想象的咨询责任或警告评论,从而使它们变得如此淡化和生产缓慢,以至于当它们到达时, OP已经筋疲力尽了。所以这将是我的下一个策略。也就是说,在我身边有一群律师回答
-
我可以告诉你@HawasKaPujaari,但你可能不喜欢这个答案,也不会在这里输入