mysql_query()期望参数1为字符串,给定资源 [英] mysql_query() expects parameter 1 to be string, resource given
本文介绍了mysql_query()期望参数1为字符串,给定资源的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
所以我的代码是这个..
so my code is this..
<?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);
?>
它总是给我"mysql_query()期望参数1是字符串,给定资源",我无法弄清楚如何解决它.
And its always giving me the "mysql_query() expects parameter 1 to be string, resource given" and i cant figure out how to solve it.
你们能帮我吗?
推荐答案
这是您的问题:
$query = mysql_query ("SELECT * FROM tb_funcionario WHERE username='$username' and password='$password'");
$result = mysql_query($query);
您在第一行上运行查询,该查询返回资源"作为查询结果.然后,在下一行立即尝试使用该资源作为另一个查询以再次运行.您不需要第二行,可以在第一行中设置$result
.
You're running a query on the first line, which returns a "resource" as a result of the query. Then on the immediate next line you try to use that resource as another query to run again. You don't need the second line, the $result
can be set in the first line.
这篇关于mysql_query()期望参数1为字符串,给定资源的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文