![](/img/trans.png)
[英]Error: Access denied for user 'www-data'@'localhost'
[英]Access denied for user 'www-data'@'localhost'
運行代碼時出現此錯誤。 如何將用戶www-data
更改為root
?
//終端中記錄的錯誤
[Tue Mar 03 10:33:01.023877 2015] [:error] [pid 3161] [client 127.0.0.1:37725] PHP Warning: mysql_query(): Access denied for user 'www-data'@'localhost' (using password: NO) in /var/www/html/wow/register.php on line 23, referer: http://localhost/wow/register.php
[Tue Mar 03 10:33:01.023957 2015] [:error] [pid 3161] [client 127.0.0.1:37725] PHP Warning: mysql_query(): A link to the server could not be established in /var/www/html/wow/register.php on line 23, referer: http://localhost/wow/register.php
// Codes inside register.php
<?php
require('config.php');
if(isset($_POST['submit'])){
//Perform the verification of the nation
$email = $_POST['email'];
$confirmEmail = $_POST['confirmEmail'];
$pass = $_POST['pass'];
$confirmPass = $_POST['confirmPass'];
if($email == $confirmEmail){
if($pass == $confirmPass){
//All good, Carry on.
$firstName = mysql_escape_string($_POST['firstName']);
$lastName = mysql_escape_string($_POST['lastName']);
$userName = mysql_escape_string($_POST['userName']);
$email = mysql_escape_string('email');
$confirmEmail = mysql_escape_string('confirmEmail');
$pass = mysql_escape_string('pass');
$confirmPass = mysql_escape_string('confirmPass');
mysql_query("INSERT INTO `users` (`id`, `firstName`, `lastName`, `userName`, `email`, `pass`) VALUES (NULL, '$firstName', '$lastName', '$userName', '$email', '$pass')") or die("Can't Connect!");
} else{
echo "Sorry, your passwords do not match. <br />";
}
} else {
echo "Sorry, your email's do not match. <br />";
}
} else{
$form = <<<EOT
<form action="register.php" method="POST">
First Name: <input type="text" name="firstName"/><br />
Last Name: <input type="text" name="lastName"/><br />
Username: <input type="text" name="userName"/><br />
Email: <input type="text" name="email"/><br />
Confirm Email: <input type="text" name="confirmEmail"/><br />
Password: <input type="password" name="pass"/><br />
Confirm Password: <input type="password" name="confirmPass"/><br />
<input type="submit" value="Register" name="submit"/>
</form>
EOT;
}
echo $form;
?>
第一個錯誤是當您嘗試連接到數據庫時。
在config.php
,作為數據庫用戶,您可能會看到類似www-data
,將其更改為正確的用戶名和密碼。
您也可以在您的項目中搜索單詞www-data
。
您遇到了第二個錯誤,因為第一個錯誤。 由於您的連接失敗,因此您的鏈接為null
您的MySQL用戶名或密碼不正確(當前為空白),或者不允許用戶www-data在域localhost上連接。
您需要在MySQL中創建一個用戶並為該數據庫分配訪問權限和特權,或者如果已經完成,請檢查是否輸入了正確的詳細信息。
另外,現在不建議使用mysql_connect和'mysql'函數。 升級到mysqli。
您可以使用一些參考入門。
https://www.digitalocean.com/community/tutorials/a-basic-mysql-tutorial
數據庫在哪里? 您正在使用Godaddy托管嗎? 從昨天3月3日UTC大約16點開始,似乎有多個網站受此錯誤影響。 (您的時間與此事件匹配)如果您確定用戶名,用戶名,密碼或用戶ID的特權未更改,請與db admin進行聯系以對ID進行一些還原。 (附:我的觀點不允許發表評論)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.