- Joined
- Jul 18, 2010
- Messages
- 147
- Reaction score
- 29
Източник:Тук
В този урок ще ви покажа как да си направите "Забравена парола" на вашата регистрация .
Допускаме че имате регистрация с MySQL, където потребителя попълва име, парола и e-mail и т.н. .
Ето как работи системата за "Забравена парола" - потребителят, който е забравил паролата на акаунта си въвежда своя e-mail, базата данни търси неговия e-mail и при истина праща неговата парола на e-mail-а му .
forgot.php
<?php
//попълвате информация за хост , бд потербител , бд парола и база данни
$dbhost='localhost';
$dbusername='username';
$dbuserpass='password';
$dbname='database';
// свързаваме се с базата данни
mysql_connect ($dbhost, $dbusername, $dbuserpass);
if (!mysql_select_db($dbname)) die(mysql_error());
if($_POST['email'])
{
$email = $_POST['email'];
$checkemail = mysql_query("SELECT username,password FROM users WHERE email='$email'");
$row = mysql_fetch_array($checkemail);
$numrows = mysql_num_rows($checkemail);
if ($numrows!=0) {
$name = $row['username'];
$password = $row['password'];
// изпращаме паролата
$subject = "Вашата Парола";
$message = "Уважаем $name, този e-mail е изпратен , защото вие сте забравили вашата парола .
Информация за вашия акаунт :
Username: $name
Password: $password
Благодарим ви ,
yourdomein.com";
mail($email, $subject, $message, "From: <[email protected]>nX-Mailer
HP/" . phpversion());
echo "<center>Парола изпратена.</center>";
}else{
echo "<center>Въведеният e-mail не съществува в нашата база данни .</center>";
}
}
?>
<html>
<head>
<title>Забравена парола?</title>
</head>
<body>
<center>
Попълни e-mail-а с който си се регистрирал при нас и ние ще ви изпратим вашата парола от нашата база данни.<br />
<form action="forgot.php" method="POST">
E-mail Address: <input type="text" name="email" size="15" />
<input type="submit" value="Send!" />
</form>
</center>
</body>
</html>
Ако във вашата база данни името, паролата, майла и името на таблицата се записват по различен начин , трябва да промените :
SELECT username ,password FROM users WHERE email ='$email'
Също така трябва да промените това според записа на името и парола в таблицата
$name = $row['username'];
$password = $row['password'];
В този урок ще ви покажа как да си направите "Забравена парола" на вашата регистрация .
Допускаме че имате регистрация с MySQL, където потребителя попълва име, парола и e-mail и т.н. .
Ето как работи системата за "Забравена парола" - потребителят, който е забравил паролата на акаунта си въвежда своя e-mail, базата данни търси неговия e-mail и при истина праща неговата парола на e-mail-а му .
forgot.php
<?php
//попълвате информация за хост , бд потербител , бд парола и база данни
$dbhost='localhost';
$dbusername='username';
$dbuserpass='password';
$dbname='database';
// свързаваме се с базата данни
mysql_connect ($dbhost, $dbusername, $dbuserpass);
if (!mysql_select_db($dbname)) die(mysql_error());
if($_POST['email'])
{
$email = $_POST['email'];
$checkemail = mysql_query("SELECT username,password FROM users WHERE email='$email'");
$row = mysql_fetch_array($checkemail);
$numrows = mysql_num_rows($checkemail);
if ($numrows!=0) {
$name = $row['username'];
$password = $row['password'];
// изпращаме паролата
$subject = "Вашата Парола";
$message = "Уважаем $name, този e-mail е изпратен , защото вие сте забравили вашата парола .
Информация за вашия акаунт :
Username: $name
Password: $password
Благодарим ви ,
yourdomein.com";
mail($email, $subject, $message, "From: <[email protected]>nX-Mailer
echo "<center>Парола изпратена.</center>";
}else{
echo "<center>Въведеният e-mail не съществува в нашата база данни .</center>";
}
}
?>
<html>
<head>
<title>Забравена парола?</title>
</head>
<body>
<center>
Попълни e-mail-а с който си се регистрирал при нас и ние ще ви изпратим вашата парола от нашата база данни.<br />
<form action="forgot.php" method="POST">
E-mail Address: <input type="text" name="email" size="15" />
<input type="submit" value="Send!" />
</form>
</center>
</body>
</html>
Ако във вашата база данни името, паролата, майла и името на таблицата се записват по различен начин , трябва да промените :
SELECT username ,password FROM users WHERE email ='$email'
Също така трябва да промените това според записа на името и парола в таблицата
$name = $row['username'];
$password = $row['password'];