[英]Error: Access denied for user 'www-data'@'localhost'
我在lubuntu虛擬機上運行一個mysql數據庫(通過phpmyadmin管理),該虛擬機本身在mac 10.6上。 當我在我的網頁上收到以下錯誤時,一切都工作順利,直到更早,(我沒有觸及登錄代碼的任何部分!)
Erreur:SQLSTATE [28000] [1045]訪問被拒絕用戶'www-data'@'localhost'(使用密碼:NO)
我不明白這個錯誤來自哪里,因為我沒有在phpmyadmin上有一個名為www-data的用戶,我的文件應該使用數據庫上的root帳戶:
$dbname = 'name';
$dbuser = 'root';
$dbpass = '*****';
$dbhost = 'localhost';
try{
$linkpdo = new PDO('mysql:host='.$dbhost.';'.$dbname.', '.$dbuser.' , '.$dbpass);
$linkpdo -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch (Exception $e) {
die('Erreur : '.$e->getMessage());
}
經過一些谷歌搜索,我看到人們修改了他們的config.conf文件,但我不知道如何或為什么。
使用雙引號字符串和連接的正確參數,使用雙引號字符串和$variable
擴展更容易構建。
$linkpdo = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass);
$linkpdo -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
<?php
$dsn = 'mysql:dbname=name;host=localhost';
$user = 'root';
$password = '*****';
try {
$dbh = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
?>
試試這個代碼。 有關更多詳細信息,請訪問此鏈接http://php.net/manual/en/pdo.connections.php
用戶和密碼是單獨的參數, http://php.net/manual/en/pdo.connections.php 。
所以在這里取出連接 - > .', '.$dbuser.' , '.$dbpass
.', '.$dbuser.' , '.$dbpass
。
連接應該是:
$linkpdo = new PDO('mysql:host='.$dbhost.';dbname='. $dbname, $dbuser, $dbpass);
嘗試這個 :
$linkpdo = new PDO('mysql:host='.$dbhost.';dbname='.$dbname , $dbuser, $dbpass);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.