Php xampp for windows上的PDO连接错误

Php xampp for windows上的PDO连接错误,php,pdo,xampp,Php,Pdo,Xampp,我是PDO新手,正在尝试在xampp for windows上使用它。我一直收到一个与主机相关的错误,并尝试将“localhost”更改为所有可能的内容,如ip地址和套接字,但我认为我做得不对。我还尝试更改pdo_mysql.default_socket的变量,但我认为它不起作用/我也做得对。这是我得到的错误: 致命错误:未捕获异常“PDOException”,消息“SQLSTATE[42000][1044]拒绝用户“admin”@“localhost”访问C:\xampp\htdocs\fac

我是PDO新手,正在尝试在xampp for windows上使用它。我一直收到一个与主机相关的错误,并尝试将“localhost”更改为所有可能的内容,如ip地址和套接字,但我认为我做得不对。我还尝试更改pdo_mysql.default_socket的变量,但我认为它不起作用/我也做得对。这是我得到的错误:

致命错误:未捕获异常“PDOException”,消息“SQLSTATE[42000][1044]拒绝用户“admin”@“localhost”访问C:\xampp\htdocs\faculty\classes\db.class.php中的数据库“xxxxxx”

这就是我目前在php中拥有的内容

self::$instance = new PDO("mysql:host=localhost;dbname='xxxxxx'", 'admin', 'xxxxxxx');

您是否为
admin@localhost
在mysql中?PDO连接正常,但您使用了不正确的凭据登录到数据库


创建帐户的特定文档:

删除dbname周围的单引号,如中所示

self::$instance = new PDO("mysql:host=localhost;dbname=xxxxxx", 'admin', 'xxxxxxx');

我今天也遇到了同样的问题,结果发现我的xampp mysql数据库有两个“any”条目,它们在phpmyadmin的用户页面中生成了一个我忽略的警告

一旦我删除了这两个条目,我就设法与PDO连接。。。算了吧


总而言之:如果php用户列表中有“any”用户,请将其删除。

我使用常规的mysql\u connect连接进行了测试,mysql\u connect和mysql\u db\u select使用与PDO connect相同的设置,因此不是loginmysql\u connect没有指定数据库,因此,即使正在使用的帐户对数据库没有权限,也会成功。确保您已授予xxxxxx数据库的此管理员用户权限。我已连接mysql\u connect和mysql\u db\u select,并且都成功连接。该帐户仅对该数据库没有全局权限。有没有其他非PDO的方法来测试这一点?