我没弄清楚我做错了什么。我最近在我的网站上添加了一个注册/登录系统,我做了一切,包括在PHPMYADMIN中设置服务器信息。现在的问题是,当我在浏览器上输入我的网站地址时,我收到一个错误(SQLSTATE [28000] [1045]访问被拒绝用户'amaqhawe'@'localhost'(使用密码:NO))。
我的config.php文件
<?php
ob_start();
session_start();
//set timezone
date_default_timezone_set('South Africa');
//database credentials
define('DBHOST','localhost');
define('DBUSER','amaqhawe');
define('DBPASS','');
define('DBNAME','amaqhawe');
//application address
define('DIR','http://amaqhawe.co.za/');
define('SITEEMAIL','noreply@amaqhawe.co.za');
try {
//create PDO connection
$db = new PDO("mysql:host=".DBHOST.";dbname=".DBNAME, DBUSER, DBPASS);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
//show error
echo '<p class="bg-danger">'.$e->getMessage().'</p>';
exit;
}
//include the user class, pass in the database connection
include('classes/user.php');
include('classes/phpmailer/mail.php');
$user = new User($db);
?>
答案 0 :(得分:2)
检查,您创建的脚本中定义的用户是否具有使用数据库的权限(在复制数据库时传输数据,而不是用户和权限)
PhpMyAdmin允许这样做
或者简单地创建新用户(在配置脚本中查看用户名和密码)
答案 1 :(得分:0)
检查您的mysql用户凭据。他们似乎是不正确的。我想你需要指定你的数据库密码
答案 2 :(得分:0)
检查phpmyadmin配置文件 config.inc.php 并改变这一行
地点: 如果您使用的是Ubuntu / Debian
/etc/phpmyadmin/config.inc.php
如果是Redhat / CentOs
/etc/phpMyAdmin/config.inc.php
由于您的密码为空:默认情况下,phpmyadmin不会允许您输入空密码:&#39; amaqhawe&#39; @&#39; localhost&#39; (使用密码:否)
所以修改配置文件
$cfg['Servers'][$i]['AllowNoPassword'] = TRUE; // Change this form false to true
现在允许空密码。
这可能对你有所帮助。
答案 3 :(得分:0)
答案 4 :(得分:0)
该网站现已开始运行。我创建了一个新用户并将其添加到数据库(amaqhawe_amaqhawe
)。之后,我的数据库凭据如下所示:
//database credentials
define('DBHOST','localhost');
define('DBUSER','amaqhawe_admin');
define('DBPASS','960721');
define('DBNAME','amaqhawe_amaqhawe');
问题是我没有在我的用户凭据上写amaqhawe_user
,我只写了user
而没有在开头包含amaqhawe_
。非常感谢您的投入。你真的帮了我很大的时间。