簡體   English   中英

用戶'root'@'localhost'訪問被拒絕(使用密碼:NO);

[英]Access denied for user 'root'@'localhost' (using password: NO);

我正在使用PHP amd mysql(XAMPP)。 我正在嘗試將我的php文件與數據庫與PDO連接。 但它顯示以下錯誤。 (mysql_query():用戶'root'@'localhost'拒絕訪問(使用密碼:NO))。 我不知道的問題是什么。 我第一次使用PDO。 請有人告訴我問題是什么,解決方案是什么。 這是我的代碼。

$dsn = 'mysql:dbname=abc;host=localhost';
$dbuser = 'user';
$dbpass = 'pass';

$params = array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, 
            PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC);

$pdo = new PDO($dsn, $dbuser, $dbpass, $params);
$dsn = 'mysql:host=localhost;dbname=test';
$dbuser = 'user';
$dbpass = 'pass';

$params = array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, 
            PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC);

$pdo = new PDO($dsn, $dbuser, $dbpass, $params);

你在這里做錯了mysql:dbname = abc; host = localhost

                            ^^^^^^^^^^

好吧,你不要將mysql_query()與PDO一起使用。 你可以使用$ pdo-> query() ,或者更好的是$ pdo-> prepare()使用准備語句。

mysql_query()來自不推薦使用的mysql API。

$pdo = new PDO($dsn, $dbuser, $dbpass, $params);
$stmt = $pdo->prepare('SELECT * FROM `table` WHERE id = ?');
$stmt->execute( [ $_GET['id'] ] );
$row = $stmt->fetch();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM