如何从数据库中获取md5密码。 我正在登录表单> 我想,当用户要登录时。如果用户名和密码文本字段与数据库匹配,则使用将登录。
数据库.. 在数据库中,我用md5()存储密码。 现在如何从数据库中获取密码。以及如何使用它进行验证。 谢谢所有
<h1>Login Here</h1>
<form name="f1" action="login.php" method="post">
<table border="1">
<tr><td>username</td><td><input type="text" name="t1"></td></tr>
<tr><td>password</td><td><input type="password" name="t2"></td></tr>
<tr><td><input type="submit" value="login"></td></tr>
</table>
</form>
login.php
<?php
include "db.php";
$user=$_POST['t1'];
$pass=$_POST['t2'];
$result=mysql_query("select * from core where username='$user'")or die(mysql_error());
$row=mysql_fetch_row($result);
?>
<h1>Welcome Mr. <?php echo $user;?></h1>
<table border="1">
<tr><td>Your User-Id :- </td><td><?php echo $row[0];?></td></tr>
<tr><td>Your Username: </td><td><?php echo $row[1];?></td></tr>
<tr><td>your md5 Password: </td><td><?php echo $row[2];?></td></tr>
<tr><td>your Email Id: </td><td><?php echo $row[3];?></td></tr>
</table>
答案 0 :(得分:0)
请勿尝试从数据库中解码密码并使用用户输入的密码进行检查。而不是尝试将用户输入的密码编码为md5,并将其与数据库一起检查。
无法解密MD5。嗯,有,但没有合理的方法 去做吧。这就是重点。
要检查是否有人输入了正确的密码,您需要MD5无论用户输入什么,并查看它是否与您在数据库中的匹配。 如需了解更多信息,请查看this answer。
所以你可以做的就像这样
if(isset($_POST['t2']) && trim($_POST['t2']) != ''){
$pass = md5(trim($_POST['t2']));
//Do a select query for fetching with the username and $pass and do the rest
}