在登记表格中验证数据

时间:2016-04-28 11:45:02

标签: php

我正在做一个验证数据的程序,即检查输入的用户名是否存在于数据库中。但我发现代码没有进入第一个if条件,即if ($result->num_rows > 0) {

<?php  
include('custdb.php');
session_start();
$f=0;
//$user=mysqli_real_escape_string($conn,$_POST['username']);
//$pass=mysqli_real_escape_string($conn,$_POST['password']);
//$fetch=$conn->query("SELECT * FROM `info` WHERE username='".$uname."' and password='".$pass."'");
//$_SESSION['info_username']=$user;
//header("Location:custprofile.php");
echo $uname=$_POST['username'];
 echo "<br>";
 echo $pass=$_POST['password'];
$sql = "SELECT * FROM `info` WHERE `email`=".$uname;
 $result = $conn->query($sql);
 echo"done";
if ($result->num_rows > 0) {
     // output data of each row
     while($row = $result->fetch_assoc()) {

        if($uname==$row["email"])
        {
            $f=1;
        }
        else
        {
            $f=0;
        }


    //echo '<h4 align="left"><a href="update.php?id='.$pro_id.'&qty='.$qty.'">Update Quantity</a> </h4>';   
}
if($f==1)
{
   header("Location:custprofile.php"); 
}
else
{
    header("Location:custindex.php"); 
}
}
else {
     echo "0 results";
}

?>

1 个答案:

答案 0 :(得分:0)

您的SQL查询存在问题。 $ uname周围的报价不见了。

$sql = "SELECT * FROM `info` WHERE `email`='".$uname."';";