簡體   English   中英

用戶'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

https://www.digitalocean.com/community/tutorials/how-to-create-a-new-user-and-grant-permissions-in-mysql

http://codular.com/php-mysqli

數據庫在哪里? 您正在使用Godaddy托管嗎? 從昨天3月3日UTC大約16點開始,似乎有多個網站受此錯誤影響。 (您的時間與此事件匹配)如果您確定用戶名,用戶名,密碼或用戶ID的特權未更改,請與db admin進行聯系以對ID進行一些還原。 (附:我的觀點不允許發表評論)

暫無
暫無

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

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