gpt4 book ai didi

php - fatal error : PDOException SQLSTATE[28000] [1045] Access denied

转载 作者:行者123 更新时间:2023-12-02 06:43:04 26 4
gpt4 key购买 nike

我正在尝试安装一个 PHP 应用程序,该应用程序是由另一个我联系不上的人编写的,他使用了 PDO。

我在运行这段代码时遇到了很多问题。在某些地方,MySQL 连接很好,因为没有使用 PDO(这表明用户名和密码是正确的),但在其他地方,它会抛出这个异常:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[28000] [1045] Access denied for user 'www-data'@'localhost' (using password: NO)' in /var/www/x/include/SPDO.php:14 Stack trace: #0 /var/www/x/include/SPDO.php(14): PDO->__construct('mysql:host=;dbn...', NULL, NULL) #1 /var/www/x/include/SPDO.php(22): SPDO->__construct() #2 /var/www/x/include/class_Projecte.php(55): SPDO::singleton() #3 /var/www/x/dades_proj_edit.php(116): Project->__construct() #4 {main} thrown in /var/www/x/include/SPDO.php on line 14

我不明白为什么要查看用户 www-data。我查看了谷歌,发现这个错误有很多问题,但是来自 Magento 这样的 CMS没有什么可以帮助我的。

  • PHP 版本:PHP 5.3.3-7
  • MySQL 5.1.49 的 PDO 驱动程序
  • Apache 版本:Apache/2.2.16 (Debian)
  • Apache 模块:核心 mod_log_config mod_logio prefork http_core mod_so mod_alias mod_auth_basic mod_authn_file mod_authz_default mod_authz_groupfile mod_authz_host mod_authz_user mod_autoindex mod_cgi mod_deflate mod_dir mod_env mod_mime mod_negotiation mod_php5 mod_reqtimeout mod_set mod_status

更新:

这是用于连接到 PDO 的两个文件:

SPDO.php 的开始:

<?php
class SPDO extends PDO
{
private static $instance = null;
private static $dbhost="localhost";

最佳答案

www-data 是执行 PHP 脚本的用户。我想如果没有提供用于连接到数据库的用户名,PDO 将默认使用它。

似乎提供给您的代码无法从您使用的任何设置方法中找到用户名和密码,或者开发人员未在调用 PDO 时正确提供用户名和密码。

临时修复是编辑文件“/var/www/x/include/SPDO.php”。在第 14 行,您会发现对 PDO 构造函数的调用。将第二个参数更改为您的用户名,将第三个参数更改为您的密码。

关于php - fatal error : PDOException SQLSTATE[28000] [1045] Access denied,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4896264/

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