我一直收到此错误警告:mysql_query()期望参数1为字符串

时间:2017-09-27 03:26:58

标签: php

  

警告:mysql_query()要求参数1为字符串,资源   在第26行的C:\ xampp \ htdocs \ demo \ mysql \ login_create.php中给出

查询失败。我的代码

  $connection = mysql_connect('localhost', 'root', '', 'loginapp');
    if($connection){
        echo "We are connected";
    }
    else{
     die("database connection failed");
    }

    $query = "INSERT INTO users(username,password)";
    $query .= "VALUES ('$username', '$password')";
    $result = mysql_query($connection, $query);
    if(!$result){
        die('Query failed' . mysql_error());
    }
}

2 个答案:

答案 0 :(得分:0)

您正在使用不同顺序的参数调用函数。以这种方式更改订单:

$connection = mysql_connect('localhost', 'root', '', 'loginapp');
    if($connection){
        echo "We are connected";
    }
    else{
     die("database connection failed");
    }

    $query = "INSERT INTO users(username,password)";
    $query .= "VALUES ('$username', '$password')";
    $result = mysql_query($query, $connection); // <---- Here is the error
    if(!$result){
        die('Query failed' . mysql_error());
    }
}

顺便说一句,我建议你不要使用mysql_ *,使用mysqlipdo。并使用预准备语句来阻止sql injections

希望这会有所帮助:)

答案 1 :(得分:0)

SQL查询必须是第一个参数。

$result = mysql_query($query, $connection);