在执行php索引页时,获取错误“mysql_error()期望参数1成为资源”

时间:2013-02-09 21:08:24

标签: php mysql

我正在尝试在Xampp服务器上部署php应用程序并在index.php上获取错误

Warning: mysql_connect(): Access denied for user 'root'@'localhost' (using password: YES) in C:\xampp\htdocs\xampp\php-inventory\lib\database.php on line 85
Warning: mysql_error() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\xampp\php-inventory\lib\database.php on line 85
CDatabase::Connect() error

这就是出错的功能:

function Connect($connect_params = "") {
    extract($connect_params);
    //resource mysql_connect ( [string server [, string username [, string password [, bool new_link !!! [, int client_flags ]]]]] )
    $this - > conn_id = mysql_connect($server, $login, $password, True) or die("CDatabase::Connect() error ".mysql_error($this - > conn_id));

    if ($default != "") $this - > SelectDB($default);
}

我尝试将“true”更改为1仍然相同。我是php新手,无法找到任何有用的东西。没有为mysql设置密码。

2 个答案:

答案 0 :(得分:0)

您的密码错误。修复它。您可能不应该使用root作为用户。另外,请勿使用ext/mysql

你在mysql_error上收到警告的原因是因为连接错误没有返回资源(毕竟它们无法建立连接)。 Mysql_error需要资源从数据库连接中获取错误。没有连接,它不能。幸运的是,mysql_connect自己报告错误。

答案 1 :(得分:0)

  1. “...拒绝用户'root'@'localhost'(使用密码:YES)...” 用户名或密码错误。
  2. 你的意思是“没有为mysql设置密码。” ?
  3. 为什么是root用户?
  4. 第二个警告:
  5.   

    mysql_error()期望参数1为资源,布尔值为

    因为:“成功时返回MySQL链接标识符,失败时返回FALSE”。 http://php.net/manual/en/function.mysql-connect.php 5.使用

    更改or die ( ... )

    if(!$this->conn_id) { // Error }