我正在使用PHP crypt()
。在这里,我使用crypt()保存了密码。
在登录时,我希望将我的密码与输入密码和登录密码相匹配,但在crypt中,每次都使用相同的密码创建随机字符串。
下面是我的登录代码。
$user_name=$_REQUEST['username'];
$salt = "";
echo $password=crypt($_REQUEST['password'], $salt);
$query ="select username , password from users where username = '".$user_name."'";
$result = mysqli_query($con , $query);
$row = mysqli_fetch_assoc($result);
echo "<pre>";print_r($row);exit;
登出输出
$1$oIllNdlE$y23rdM6qp4sv/P/bgfUE7/ //user input
Array
(
[username] => sradha
[password] => $1$dI1IgbiD$NsfWU0fOHOzNEFbd7Vrx.0 //from data base
)
这里我的密码是123,对于同样的123,它产生了两个不同的结果。
登录时,下面是我插入数据库的代码:user_name=$_REQUEST['username'];
$salt = "";
$password=crypt($_REQUEST['password'], $salt);
mysqli_query($con , "INSERT INTO users (username , password) VALUES ('sradha' , '".$password."')");
任何建议,如何使用crypt匹配密码?