Home >Backend Development >PHP Tutorial >mysql_num_rows()调用出错,!

mysql_num_rows()调用出错,!

WBOY
WBOYOriginal
2016-06-23 13:44:082250browse

$name=$_POST['username'];
$pwd=$_POST['password'];

$con=mysql_connect("localhost","root","123456");
mysql_select_db("leelogin_db",$con);
if($name&&$pwd){
    $sql="SELECT * FROM lee_tb WHERE username='$name'and password='$pwd'";
    echo $sql;
    $res=mysql_query($sql);

    $rows=mysql_num_rows($res);
echo $rows;
    if($rows){
        echo "<script>alert('Login succeeded!');history.back()</script>";
    }
}



上面是部分源代码   我加了两个echo来输出$sql 和$rows  但是每次都提示mysql_num_rows出错,报错如下:
SELECT * FROM lee_tb WHERE username='admin'and password='12456'
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in F:\xampp\htdocs\phpstudy\login.php on line 18


在phpmyadmin中的对应数据表中有三个字段,自增的personID username password,但是就是查询不到结果集,求助求助~~~~


回复讨论(解决方案)

$res=mysql_query($sql)  or die(mysql_error());

$res=mysql_query($sql,$con)

mysql_select_db("leelogin_db",$con);如果这个函数当中指定了连接标示符($con)那么在$res=mysql_query($sql);当中也要有连接标示符亦写作($res=mysql_query($sql,$con) )或者都不写连接标示符。
mysql_select_db("leelogin_db");
$rows=mysql_num_rows($res);

你记住,出现这种错误Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in F:\xampp\htdocs\phpstudy\login.php on line 18
基本上就是mysql_query($sql);错了,也就是你的sql语句错了!

username='admin'和and之间应该有个空格  如果字段存的是字符串 那么加引号! 如果是数字 不加引号!password=12456

SELECT * FROM lee_tb WHERE username='admin' and password='12456'

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn