Php MySQL使用电子邮件字段从数据库检索密码字段
我是新使用php的,我正在为我的页面创建一个登录窗口,在这里我想比较输入的电子邮件和密码是否与数据库中的相同;我已经对电子邮件进行了比较,但我不知道如何检索该电子邮件的确切密码,并将其与密码输入进行比较,以了解其是否相同。 这就是我的php的功能:Php MySQL使用电子邮件字段从数据库检索密码字段,php,mysql,database,Php,Mysql,Database,我是新使用php的,我正在为我的页面创建一个登录窗口,在这里我想比较输入的电子邮件和密码是否与数据库中的相同;我已经对电子邮件进行了比较,但我不知道如何检索该电子邮件的确切密码,并将其与密码输入进行比较,以了解其是否相同。 这就是我的php的功能: $password=$_POST['password']; $email=$_POST['email']; $query = mysql_query( "SELECT email FROM Register WHERE email = '$email
$password=$_POST['password'];
$email=$_POST['email'];
$query = mysql_query( "SELECT email FROM Register WHERE email = '$email'");
$query2 = mysql_query( "SELECT password FROM Register WHERE email = '$email', password = '$password'");
if(!$email)
{
if (!$password)
{
echo '
<script>
alert("Email and password are required.");
window.history.go(-1);
</script>';
exit;
}
else
{
echo '
<script>
alert("Email Required.");
window.history.go(-1);
</script>';
exit;
}
}
if (!$password)
{
echo '
<script>
alert("Password required.");
window.history.go(-1);
</script>';
exit;
}
else
{
if(!mysql_num_rows($query))
{
echo '
<script>
alert("The email is not the same or does not exist");
window.history.go(-1);
</script>';
exit;
}
if($query2==$password)
{
echo '
<script>
alert("Succesful Login");
window.history.go(-1);
</script>';
exit;
}
else
{
echo '
<script>
alert("Password is not the same, please verify.");
window.history.go(-1);
</script>';
exit;
}
}
$password=$\u POST['password'];
$email=$_POST['email'];
$query=mysql_query(“从Register中选择email,其中email='$email');
$query2=mysql_query(“从注册表中选择密码,其中email='$email',password='$password'”);
如果(!$电子邮件)
{
如果(!$password)
{
回声'
警报(“需要电子邮件和密码”);
window.history.go(-1);
';
出口
}
其他的
{
回声'
警报(“需要电子邮件”);
window.history.go(-1);
';
出口
}
}
如果(!$password)
{
回声'
警报(“需要密码”);
window.history.go(-1);
';
出口
}
其他的
{
如果(!mysql_num_rows($query))
{
回声'
警报(“电子邮件不相同或不存在”);
window.history.go(-1);
';
出口
}
如果($query2==$password)
{
回声'
警报(“成功登录”);
window.history.go(-1);
';
出口
}
其他的
{
回声'
警报(“密码不相同,请验证”);
window.history.go(-1);
';
出口
}
}
顺便说一下,感谢您的帮助更改如下查询
从注册表中选择密码,其中email='$email'和password='$password'
还可以使用mysqli*,因为mysql*在PHP7中已被弃用并完全删除
请试试这个
mysqli_query( "SELECT * FROM Register WHERE email = '$email' and password ='$password'");
if(mysql_num_rows($query))
{
echo '
<script>
alert("Succesful Login");
window.history.go(-1);
</script>';
exit;
}
else
{
echo '
<script>
alert("The email is not the same or does not exist");
window.history.go(-1);
</script>';
exit;
}
mysqli_查询(“从Register中选择*,其中email='$email'和password='$password'”);
if(mysql_num_行($query))
{
回声'
警报(“成功登录”);
window.history.go(-1);
';
出口
}
其他的
{
回声'
警报(“电子邮件不相同或不存在”);
window.history.go(-1);
';
出口
}
$data=mysql_fetch_array($query);
$data['password'];// there contains password
so you code this
if($query2==$password)
{
echo '
<script>
alert("Succesful Login");
window.history.go(-1);
</script>';
exit;
}
will be changed to
if($data['password']==$password)
{
echo '
<script>
alert("Succesful Login");
window.history.go(-1);
</script>';
exit;
}
$data=mysql\u fetch\u数组($query);
$data['password'];//其中包含密码
所以你给这个编码
如果($query2==$password)
{
回声'
警报(“成功登录”);
window.history.go(-1);
';
出口
}
将更改为
如果($data['password']==$password)
{
回声'
警报(“成功登录”);
window.history.go(-1);
';
出口
}
希望你能得到答案。你的密码加密了吗?不,不,我用POST和HTM中的“password”很简单。然后在email=$email和password=$password后面加上and,而不是逗号,就像第二个问题中的这个一样。欢迎你,不要验证答案,然后取消验证,感觉很糟糕。给出的两个答案都是正确的。所以你应该根据时间来判断已验证的ans,兄弟。无论如何,Cheesthanks还需要使用mysql_num_rows($query2)在if中进行验证