提问人:Shafiur Rahman Sifat 提问时间:11/16/2023 更新时间:11/16/2023 访问量:49
由于笔记本电脑中的用户名和密码,PHP网站数据库访问被拒绝,但在朋友笔记本电脑中正常工作
php website database access denied because of username and password in my laptop but works properly in friends laptop
问:
我正在使用一个PHP网站。它具有数据库的用户名和密码。所以它显示拒绝访问我的笔记本电脑。当我在逐个更改每个PHP文件后将用户名更改为root并且密码为空时,它就会起作用。但是如果是我的朋友笔记本电脑,他不需要更改每个文件的用户名和 pssword 。该网站仍然在他的笔记本电脑中完美运行,但在我的情况下,它显示访问被拒绝.我还从我的朋友phpmyadmin导出了数据库,并在我的数据库中创建了新数据库并导入了他的数据库。我还将整个网站文件夹从他的笔记本电脑压缩到我的笔记本电脑上,然后解压缩并复制到 htdocs,然后启动 xampp 并尝试运行它。在我的笔记本电脑中仍然显示访问被拒绝,但在我的朋友笔记本电脑中可以完美运行。为什么会这样?我能做些什么?
答:
确认您的 PHP 代码指定了正确的主机。如果您要使用“localhost”,请确保MySQL服务器确实在本地计算机上运行。 使用以下查询检查用户的权限: SQL命令:
SHOW GRANTS FOR 'username'@'localhost';
将“用户名”替换为您的真实姓名。验证用户是否具有特定数据库的必要权限(例如,SELECT、INSERT、UPDATE 等)。
密码问题: 如果您更改了用户密码,请确保在所有相关位置(PHP 文件、MySQL 用户帐户等)定期更新它。 尝试使用MySQL命令重置用户的密码:
SQL命令:
ALTER USER 'username'@'localhost' IDENTIFIED BY 'new_password';
将“username”和“new_password”替换为实际值。
文件权限: 检查 Web 文件和文件夹的权限。确保 Web 服务器(Apache 或 Nginx)是可读的。 确保 PHP 文件可以访问所需的目录和文件(例如配置文件、模板等)。
环境差异: 比较您的笔记本电脑和朋友的笔记本电脑之间的环境设置。PHP 版本、XAMPP 程序或其他软件之间有什么区别吗? 确保两台笔记本电脑运行相同版本的 PHP、MySQL 和 XAMPP。
调试工具: 通过在 PHP 文件的开头添加以下行,在 PHP 代码中启用错误报告。
error_reporting(E_ALL);
ini_set('display_errors', 1);
这将帮助您识别任何特定的错误或警告。
最后,您可以检查MySQL错误日志中是否有任何相关消息。
:)
评论
it has username and password for the database
literally after changing every php file one by one
...你有没有想过要把数据库连接代码放到一个函数中,你可以在所有页面之间重复使用和共享(它可以放在一个文件中,然后你可以把它放在你需要它的地方)。然后,在安装到新环境中时,只需更改一次数据库凭据include