Php 单击以登录时出现错误
在这种情况下,如果在我的数据库中所有的用户详细信息都被持有,我想登录,那么这段代码可能会生成错误。。。我的主要工作是当我在数据库中有数据,然后我可以登录与存在的数据,它提供错误和不记录,如果填写错误的数据,然后页面不提供错误,它重定向。。 我需要的是,当我填写正确,然后转到successfull页,如果填写错误,然后提供错误Php 单击以登录时出现错误,php,Php,在这种情况下,如果在我的数据库中所有的用户详细信息都被持有,我想登录,那么这段代码可能会生成错误。。。我的主要工作是当我在数据库中有数据,然后我可以登录与存在的数据,它提供错误和不记录,如果填写错误的数据,然后页面不提供错误,它重定向。。 我需要的是,当我填写正确,然后转到successfull页,如果填写错误,然后提供错误 <?php include('./includes/config.php'); if(isset($_POST['submit_form']))
<?php
include('./includes/config.php');
if(isset($_POST['submit_form']))
{
$email1=$_POST["email"];
$password1=$_POST["password"];
$query="select * from login";
$result = mysql_query($query);
$num=mysql_num_rows($result);
if($num>0)
{
while($row=mysql_fetch_array($result)){
$email2=$_POST["email"];
$password2=$_POST["password"];
}
if ($email1==$email2 && $password1==$password2) {
echo "You are in";
}
else {
echo "Sorry $email. Incorrect password!";
}
}
您在做什么检查登录条件,因为您正在与每个用户进行比较。也可以使用mysqli_uu而不是mysql
if(isset($_POST['submit_form']))
{
$email1=$_POST["email"];
$password1=$_POST["password"];
$query="select * from login where email='$email1' AND password='$password1";
$result = mysql_query($query);
$num=mysql_num_rows($result);
if($num>0)
{
echo "You are in";
}
else
{
echo "Sorry $email. Incorrect password!";
}
}
您正在将输入的用户名和密码与数据库中的每个用户进行比较。因此,对于每个其他用户,您都会打印错误消息。即使你找到了匹配的用户,你也不会停止,而是继续前进
您只需查找输入了用户名和密码的用户:
$email1 = mysql_real_escape_string($_POST['email']);
$password1 = mysql_real_escape_string($_POST['password']);
$query = "select * from login where email = '$email1' and password = '$password1'";
$result = mysql_query($query) or die (mysql_error());
$num = mysql_num_rows($result);
if ($num == 0) {
echo "Incorrect email or password.";
} else {
echo "You are in";
}