当前位置: 首页 > 知识库问答 >
问题:

mysqli_connect():(HY000/1045):拒绝用户“root”@“localhost”的访问[重复]

谭铭
2023-03-14

原始关闭原因未解决

这只是一个简单的注册/登录系统,但我不知道为什么它不起作用,我会在这里粘贴我的配置:

<?php 

date_default_timezone_set("Europe/Bucharest");   
$file_name = basename($_SERVER['PHP_SELF'], '.php');    
    
define ('ROOT_PATH', realpath(dirname(__FILE__).'/..'));
//define('BASE_URL()', 'http://localhost/my_book');

function base_url(){
    if(isset($_SERVER['HTTPS'])){
        $protocol = ($_SERVER['HTTPS'] != "off") ? "https" : "http";
    } else{
        $protocol = 'http';
    }
    return $protocol . "://" . $_SERVER['HTTP_HOST'].'/login';
}
   
?>

和我的函数.php:

<?php
date_default_timezone_set("Europe/Bucharest");
define("DB_HOST", "localhost");
define("DB_USER", "root");
define("DB_PASSWORD", "");
define("DB_DATABASE", "uni");
class DB_con
{
    function __construct()
    {
        $con = mysqli_connect(DB_HOST,DB_USER,DB_PASSWORD,DB_DATABASE);
        $this->dbh=$con;
        // Check connection
        if (mysqli_connect_errno()) {
            echo "Failed to connect to MySQL: " . mysqli_connect_error();
        }
    }

    // for username availblty
    public function usernameavailblty($uname) {
        $result =mysqli_query($this->dbh,"SELECT Username 
                                        FROM tblusers 
                                        WHERE Username='$uname'");
        return $result;
    }

    // for email availblty
    public function uemailavailblty($email) {
        $result =mysqli_query($this->dbh,"SELECT UserEmail 
                                            FROM tblusers 
                                            WHERE UserEmail='$email'");
        return $result;
    }

    // Function for registration
    public function registration($fname,$uname,$uemail,$pasword)
    {
        $ret=mysqli_query($this->dbh,
                    "insert into tblusers(FullName,Username,UserEmail,Password) 
            values('$fname','$uname','$uemail','$pasword')");
        return $ret;
    }


// Function for signin
public function signin($uname,$pasword)
    {
    $result=mysqli_query($this->dbh,"select id,FullName from tblusers where Username='$uname' and Password='$pasword'");
    return $result;
    }

    function runBaseQuery($query) {
                $result = mysqli_query($this->dbh, $query);
                while($row=mysqli_fetch_assoc($result)) {
                $resultset[] = $row;
                }       
                if(!empty($resultset)){
                return $resultset;
                }
    }
    
    function numRows($query) {
        $result  = mysqli_query($this->dbh, $query);
        $rowcount = mysqli_num_rows($result);
        return $rowcount;   
    }
    
    function executeQuery($query) {
        $result  = mysqli_query($this->dbh, $query);
        return $result; 
    }




    




}
?>

我得到的错误是:

警告:mysqli_connect(): (HY000/1045):拒绝访问E:\ xampp \ htdocs \ true \ libs \ function . PHP第11行中的用户' root'@'localhost '(使用密码:NO)无法连接到MySQL:拒绝访问用户' root'@'localhost '(使用密码:NO)

我尝试在phpmyadmin中建立一个具有所有权限的新用户,但它仍然不起作用

共有1个答案

松和安
2023-03-14

这可能是由几个问题造成的

  • 尝试使用1234
  • 等默认密码一次
  • 尝试创建新用户分配所有权限,并尝试使用root
  • 的该用户insted
 类似资料: