我的数据库在本地主机上的Mac上运行时运行良好。但是,当我使用filezilla在线上传代码时,会出现以下警告:
"Warning: mysqli::__construct() [mysqli.construct]:
(HY000/1045):Access denied for user 'root'@'localhost' (using
password: YES) in /users/hassib/www/markme/index.php on line 248
Access denied for user 'root'@'localhost' (using password: YES)
我在上面放置代码的服务器是hassib.bplaced.net。这是第248行的代码,在我的localhost上的Mac上正常运行。
$db = new mysqli('localhost','root','12345','markme');
if($db->connect_error):
echo $db->connect_error;
endif;
为什么它可以在我的PC上运行,但是在我上传时不起作用?
答案 0 :(得分:0)
首先在实时(在线)上创建数据库,并使用用户名和密码创建用户,并为此数据库添加用户,然后将此用户名和密码提供给mysqli()函数
答案 1 :(得分:0)
“警告:mysqli :: __ construct()[mysqli.construct]: (HY000 / 1045):用户'root'@'localhost'的访问被拒绝(使用 密码:是)在/users/hassib/www/markme/index.php中的第248行 用户'root'@'localhost'的访问被拒绝(使用密码:是)
从上面的错误消息中,您似乎正在尝试与root
用户而不是hassib
连接
CREATE DATABASE markme;
hassib
授予特权。 GRANT ALL PRIVILEGES ON markme.* TO 'hassib'@'localhost' IDENTIFIED BY '12345';
答案 2 :(得分:0)
您确定localhost
是托管服务提供商的正确主机吗?一些提供程序可以提供其他主机进行连接。请向您的提供者询问正确的主机。