第 9 行 C:\webdev\wamp\www\membershipSite\classes\Mysql.php 中的用户 'username'@'localhost' 的访问被拒绝(使用密码:YE
Posted
技术标签:
【中文标题】第 9 行 C:\\webdev\\wamp\\www\\membershipSite\\classes\\Mysql.php 中的用户 \'username\'@\'localhost\' 的访问被拒绝(使用密码:YES)【英文标题】:Access denied for user 'username'@'localhost' (using password: YES) in C:\webdev\wamp\www\membershipSite\classes\Mysql.php on line 9第 9 行 C:\webdev\wamp\www\membershipSite\classes\Mysql.php 中的用户 'username'@'localhost' 的访问被拒绝(使用密码:YES) 【发布时间】:2013-02-18 23:14:22 【问题描述】:我对这一切都很陌生,但我确实知道相当多的 html/CSS。我想创建一个登录服务器,我从视频中获得了大部分代码。如果有人可以帮助我并彻底解释,以便我理解,将不胜感激。如果需要任何其他东西,我会很乐意发布。
<?php
require_once 'includes/constants.php';
class mysql
private $conn;
function _construct()
$this->conn = new mysqli(DB_SERVER, DB_USER, DB_PASSWORD, DB_NAME) or die('There was a problem connecting to the database.');
function verify_Username_and_Pass($un, $pwd)
$query = "SELECT *
FROM users
WHERE username = ? AND password = ?
LIMIT 1";
if($stmt = $this->conn->prepare($query))
$stmt->bind_param('ss', $un, $pwd);
$stmt->execute();
if($stmt->fetch())
$stmt->close();
return true;
【问题讨论】:
而你在 Mysql.php 中的第 9 行是?? 【参考方案1】:你需要在 mysql 中授予 user@host 权限。授予命令看起来像
grant all privileges on YOURDB.* to
'YOURUSER'@'localhost' identified by 'YOURPASSWORD';
【讨论】:
我应该把它放在哪里?抱歉,我是新手,很多都不懂。第 9 行也是 "$this->conn..." 您需要以 root/admin 用户身份登录数据库界面才能执行此操作。例如,使用 phpmyadmin、mysql workbench 或 mysql 命令行客户端。 我在 phpmyadmin 的 SQL 查询中输入了它,它没有给出拒绝访问警告,但它说请输入正确的用户名和密码【参考方案2】:只是一个侧面答案,因为我从自己的问题中得出了这个答案,但有一个不同的解决方案,因为我知道所有权限都已授予相关用户
我正在使用诸如
之类的代码 <?php
session_start();
$db_host="host";
$db_user="user";
$db_pass="mypassword";
$db_name="dbname";
$db_table="tblname";
mysql_connect($db_host, $db_user, $db_pass) or die(mysql_error());
mysql_select_db($db_name) or die(mysql_error());
这里的问题是,我使用生成器生成的数据库密码包含一个 $ 符号,它混淆了脚本并认为在开始时还有另一个变量
$db_pass="mypass$word";
【讨论】:
以上是关于第 9 行 C:\webdev\wamp\www\membershipSite\classes\Mysql.php 中的用户 'username'@'localhost' 的访问被拒绝(使用密码:YE的主要内容,如果未能解决你的问题,请参考以下文章
第 9 行:期望一个赋值或函数调用,而是看到一个表达式 no-unused-expressions