1
$link = mysql_connect('localhost', $username, $password);
if (!$link) 
{
     die('Could not connect: ' . mysql_error());
}

我收到此错误:

无法连接:用户 'www-data'@'localhost' 的访问被拒绝(使用密码:否)

为什么?

编辑:

$username="root";
$password="root";
$database="test";

    function Save($name)
    {
        $link = mysql_connect('localhost', $username, $password);
        if (!$link) {
            die('Could not connect: ' . mysql_error());
        }
        @mysql_select_db($database) or die( "Unable to select database");
        $query = "INSERT INTO test (name)" .
                 "VALUES ('" . $name . "')";
        mysql_query($query);
        mysql_close();
    }
4

5 回答 5

5

你给予$username$password重视了吗?像这样的东西?

$username="root";
$password="";
于 2010-11-02T23:12:42.297 回答
2

您的$password变量为空((using password: NO)),然后您尝试在www-data没有密码的情况下登录用户,并且服务器结果被拒绝访问。可能该用户已设置密码。

于 2010-11-02T23:13:44.053 回答
1

从您的编辑来看,这个问题似乎是一个范围界定问题。

您正在尝试在函数内部建立连接,其中$username,$password$database变量是在该函数外部定义的。

我建议您阅读手册的变量范围部分,并按照@netcoder 在问题评论中的建议打开错误报告。

于 2010-11-03T00:01:02.807 回答
0

我认为问题在于,您尝试连接到数据库两次。在您的代码中的某处,您已经尝试使用用户名“www-data”连接到数据库......并且您再次使用用户名“root”连接到数据库。

此外,您使用用户名“www-data”提供的密码错误,这就是您收到错误消息。

于 2010-11-03T00:42:02.460 回答
0
$username="root";
$password="root";
$database="test";

    function Save($name)
    {
        global $username;
        global $password;
        global $database;

        $link = mysql_connect('localhost', $username, $password);
        if (!$link) {
            die('Could not connect: ' . mysql_error());
        }
        @mysql_select_db($database) or die( "Unable to select database");
        $query = "INSERT INTO test (name)" .
                 "VALUES ('" . $name . "')";
        mysql_query($query);
        mysql_close();
    }
于 2010-11-03T05:20:02.573 回答