-
فراموشی رمز عبور
برای قسمت فراموشی رمز عبور از این کد استفاده میکنم اما پسوردی که به ایمیلم فرستاده میشود بصورت md5 میباشد یعنی همانطوری که در پایگاه ذخیره شده است وقتی همین رمز برای قسمت ورود به وب سایت استفاده میکنم مرورگر پیغام رمز عبور اشتباه است را میدهد
[PHP]function makeRandomPassword() {
$salt = "abchefghjkmnpqrstuvwxyz0123456789";
srand((double)microtime()*1000000);
$i = 0;
while ($i <= 7) {
$num = rand() % 33;
$tmp = substr($salt, $num, 1);
$pass = $pass . $tmp;
$i++;
}
return $pass;
}
$password = makeRandomPassword();
$password = md5($password);
$sql = mysql_query("UPDATE users SET password='$password'
WHERE email='$email'");
$subject = "پسورد شما";
$message = "سلام پسورد جدید به ایملتان فرستادیم.
New Password: $password
Thanks!
Site admin
";
$result=mail($email, $subject, $message, "From: سایت نامWebmaster<baounajmi22@yahoo.com>\n
X-Mailer: PHP/" . phpversion());
if($result){
echo "پسورد به ایمیلتان فرستاده شد لطفا ایمیل خود راچک کنید!<br />"; }
else{
echo "خطایی در ارسال پسورد به ایمیلتان رخ داده است "; }
}
}
[/PHP]
-
خوب باید رمزی رو که کاربر وارد می کنه رو هم از همون متدی که در دیتابیس هست استفاده کنید!
-
کدام متد؟ رمز رمز نگاری نشده از پایگاه به ایمیلم فرستاده میشود
-
اگر میشه کد برگ لاگین رو هم بذارید.
-
اگر میشه کد برگ لاگین رو هم بذارید.
+
شما باید رمز هش شده رو در یک تغییر پذیر جدید (مثلا password1) بذارید و تغییر پذیر password رو به ایمیل کاربر و password1 رو به دیتابیس بفرستید.