这个错误怎么解决?Trying to get property 'num_rows' of non-object代码是:
$user=$_POST['user'];
$pass=$_POST['pass'];
$sql="SELECT * FORM $test_user WHERE name='$user'";
$result=$mysqli->query($sql);
$num=$result->num_rows;
if($num>0){
echo "用户名已存在!<p>";
echo "单击<a href='reg.php'>这里</a>重新注册";
}else{
$sql="INSERT INTO $test_user (name,pass,admin) VALUES('$user','$pass',0)";
$result=$mysqli->query($sql) or die($mysql->error);
if($result){
echo "成功注册<p>";
echo "单击<a href='login.php'>这里</a>登陆系统";
}
$user=$_POST['user'];
$pass=$_POST['pass'];
$sql="SELECT * FORM $test_user WHERE name='$user'";
$result=$mysqli->query($sql);
$num=$result->num_rows;
if($num>0){
echo "用户名已存在!<p>";
echo "单击<a href='reg.php'>这里</a>重新注册";
}else{
$sql="INSERT INTO $test_user (name,pass,admin) VALUES('$user','$pass',0)";
$result=$mysqli->query($sql) or die($mysql->error);
if($result){
echo "成功注册<p>";
echo "单击<a href='login.php'>这里</a>登陆系统";
}
试图获得非对象属性的num_rows显然是查询失败了
echo $mysqli->error;
看看
你var_dump($result)看看?
你var_dump($result)看看?var_dump($result)=bool(false)
var_dump($num)=NULL
你var_dump($result)看看?var_dump($result)=bool(false)
var_dump($num)=NULL 你上面的sql语句写错了。FROM不是FORM
你var_dump($result)看看?var_dump($result)=bool(false)
var_dump($num)=NULL 你上面的sql语句写错了。FROM不是FORM可以了,太谢谢了
$user=$_POST['user'];
$pass=$_POST['pass'];
$sql="SELECT COUNT(id) FROM $test_user WHERE name='$user' AND pass='$pass'";
$result=$mysqli->query($sql);
$num=$result->num_rows;
echo $num; // 这里输出 是 1
var_dump($num); //输出是 int(1)
if($num==0){
echo "用户名或者密码错!";
echo "单击<a href='login.php'>这里</a>重新登录!";
}else{
echo "正确进入下一步";
}这段就错了 ,用户名密码错了,也直接下一步了! 望高手解答下
改成 $sql="SELECT * FROM $test_user WHERE name='$user' AND pass='$pass'";
可以了