mysql_query()期望参数1为字符串,给定资源

Aph*_*rut 3 php

所以我的代码是这个..

<?php

$password=(!isset($_POST['password']));
$username=(!isset($_POST['username']));

    $username = mysql_real_escape_string($username);
    $password = mysql_real_escape_string($password);

$query = mysql_query ("SELECT * FROM tb_funcionario WHERE username='$username' and password='$password'");

   $result = mysql_query($query);

   var_dump($result);

   $num_rows = $result->$num_rows;

    if ($num_rows)
    {
        echo "username already exist";
    }
    else
    {
     $query = "INSERT INTO tb_funcionario (nome_funcionario, username, password) VALUES (
    '$_POST[nome_funcionario]',
    '$_POST[username]',
    '$_POST[password]'
    )";;

       $result = mysql_query($query) or die (mysql_error());

    }


        mysql_query($query);
        mysql_close($bd_con);
?>
Run Code Online (Sandbox Code Playgroud)

它总是给我"mysql_query()期望参数1是字符串,资源给定",我无法弄清楚如何解决它.

你能帮助我吗?

Dav*_*vid 6

这是你的问题:

$query = mysql_query ("SELECT * FROM tb_funcionario WHERE username='$username' and password='$password'");

$result = mysql_query($query);
Run Code Online (Sandbox Code Playgroud)

您正在第一行运行查询,该查询返回"资源"作为查询的结果.然后在下一行,您尝试使用该资源作为另一个查询再次运行.你不需要第二行,$result可以在第一行设置.