下面是我的用户登录页面的代码,但是当我尝试提交表单时,它不检查数据库并直接给我输出其他输出,即无效的ID或密码我也没有收到任何错误报告,但错误报告已打开我不知道我在哪里错了.
<?PHP
if(isset($_POST['loginsubmit'])=='Login')
{
$email=$_POST['emaillogin'];
$pass=$_POST['passlogin'];
$pass=md5($pass);
$email = stripslashes($email);
$pass = stripslashes($pass);
$email = MysqL_real_escape_string($email);
$pass = MysqL_real_escape_string($pass);
require_once "database.PHP";
$sql = "SELECT * FROM user_log WHERE email = '$email' and password='$pass'";
$loginresult=MysqL_query($sql);
$row=MysqL_fetch_array($loginresult);
$rowcnt=MysqL_num_rows($loginresult);
if($rowcnt==1)
{
session_start();
$_SESSION['email']=$row['email'];
$_SESSION['mobile']=$row['mobile'];
$_SESSION['fname']=$row['fname'];
$_SESSION['lname']=$row['lname'];
echo " <script>
window.location = '../';
</script>";
}
else
{
echo " <script>
alert('Invalid Login ID or Password....');
window.location = '../';
</script>";
}
我甚至试图回应我正在从表单中正确地收到电子邮件和密码,是的我得到但是问题从下面开始我想:
$sql =“SELECT * FROM user_log WHERE email =’$email’和password =’$pass’”;
编辑:表格添加到下面
<form action="" method="POST">
<input type="email" id="email" placeholder="abc@xyz.com" name="emaillogin" required>
<input type='password' id='password' name='passlogin' placeholder='Password here' required>
<input type="submit" id="continuesubmitemail" name="loginsubmit" value="Login">
</form>
解决方法:
isset()
用于检查变量是否设置
你可以检查你的病情
if(isset($_POST['loginsubmit']) && $_POST['loginsubmit']=='Login')
写session_start();在页面顶部
使用while循环来获取数据
$rowcnt=MysqL_num_rows($loginresult);
if($rowcnt==1)
{
while($row=MysqL_fetch_array($loginresult))
{
$_SESSION['email']=$row['email'];
$_SESSION['mobile']=$row['mobile'];
$_SESSION['fname']=$row['fname'];
$_SESSION['lname']=$row['lname'];
}
echo " <script>
window.location = '../';
</script>";
}