SQL PHP HTML ASP JavaScript articles and free scripts to download
PHP Download Scripts

Forgot password script. Posting of login details by email

If you are developing a member sign up system, you must think of a forgot password facility for your members. Members will use this facility to get their lost or forgot password with login user-id. To verify the details of the member we will ask for the email address. Here the intention is to send the login details to the members email address. We will not display the login details to the screen. Definitely the owner of the email address can only open the mail and read the login details. Here first we will ask the member to enter email address by submitting a form. Then we will check the format of the email address and if correct then we will collect the id and password from the member table. If email address is not there then we will display one error message saying that email address is not there with us, so the visitor can signup as a new member. Here we have used the same member table plus_signup which we have used in our signup tutorial and login tutorial, so this can be used as a single script.

If we are storing password in the table then we can send them to user provided email address but this is not a good practice and usually password is encrypted before storing in table. Here we can't send the password to user email address, we have to send one random token or activation key to user email to reset password. Here it is ..

Sending activation key to reset password

You can download the full script with login , signup and forgot password scripts at the end of this tutorial. All steps are explained with PHP comments between the steps. Use the PHP forum to post your bugs,errors etc.
 Forgot Password ?
Enter your email address
 Email    
 Login New Member Sign UP

$email=$_POST['email'];
$email=mysql_real_escape_string($email);
$status = "OK";
$msg="";
//error_reporting(E_ERROR | E_PARSE | E_CORE_ERROR);
// You can supress the error message by un commenting the above line
if (!stristr($email,"@") OR !stristr($email,".")) {
$msg="Your email address is not correct<BR>"; 
$status= "NOTOK";}

echo "<br><br>"; if($status=="OK"){ // validation passed now we will check the tables $query="SELECT email,userid,password FROM plus_signup WHERE plus_signup.email = '$email'"; $st=mysql_query($query); $recs=mysql_num_rows($st); $row=mysql_fetch_object($st); $em=$row->email;// email is stored to a variable if ($recs == 0) { // No records returned, so no email address in our table // let us show the error message echo "<center><font face='Verdana' size='2' color=red><b>No Password</b><br> Sorry Your address is not there in our database . You can signup and login to use our site. <BR><BR><a href='signup.php'> Sign UP </a> </center>"; exit;} // formating the mail posting // headers here $headers4="admin@sitename.com"; // Change this address within quotes to your address $headers.="Reply-to: $headers4\n"; $headers .= "From: $headers4\n"; $headers .= "Errors-to: $headers4\n"; //$headers = "Content-Type: text/html; charset=iso-8859-1\n".$headers;// for html mail // mail funciton will return true if it is successful if(mail("$em","Your Request for login details","This is in response to your request for login detailst at site_name \n \nLogin ID: $row->userid \n Password: $row->password \n\n Thank You \n \n siteadmin","$headers")) {echo "<center><b>THANK YOU</b> <br>Your password is posted to your emil address . Please check your mail after some time. </center>";} else{// there is a system problem in sending mail echo " <center>There is some system problem in sending login details to your address. Please contact site-admin. <br><br><input type='button' value='Retry' onClick='history.go(-1)'></center>";} } else {// Validation failed so show the error message echo "<center>$msg <br><br><input type='button' value='Retry' onClick='history.go(-1)'></center>";}
As you have seen here we can send the lost password to the email address of the member. But if the password is encrypted and stored then we can't retrieve the lost password, so we will generate one activation key and ask the member to use that to reset the forgot password.

This is a basic script only for easy understanding
Read the tutorial on online membership management script with encrypted password system

Number of User Comments : 11


Google+
Sipence26-07-2012
yah!! this article is really helpful for me.
macky10-08-2012
Hi ahm is this script running 100%? coz ahm i will be using this script
Nathan15-08-2012
I used the script above (I am not encrypting at this time). However, when I place my email address in my forgot password form, I receive the message "Your email address is not correct". I checked the database and my email address is there.

Help!
smo16-08-2012
The checking of email address is done by ensuring presence of @ and . in you email address. So it should work. Just try to print once above the checking conditions.
luisa28-08-2012
is this really working... i need this tutorial for our website thank you.
jaharlal03-04-2013
Yes!! Really a fantastic script without any fees.

Tank You
Martin Britton29-04-2013
My database has multiple tables in it. How do I get the script to access the right table? It keeps returning saying email address is not correct even though it is.
mannyloz30-09-2013
I have tried and tried to make this script work in our website however, it keeps displaying "There is some system problem in sending login details to your address. Please contact site-admin." Please HELP!
smo04-10-2013
Contact your host asking about sending mail. Or Just check if mail function is working in your site or not.
Ramya27-11-2013
Every thing works fine except forgot password. Is there any alternative way to give site_url ???
rahiman23-08-2014
its good
Post Comment This is for short comments only. Use the forum for more discussions.
Name
Email( not to be displayed)Privacy Policy
1+2=This is to prevent automatic submission by spammers. Please enter the result of the sum as asked



Join Our Email List
Email:  
For Email Newsletters you can trust
HTML . MySQL. PHP. JavaScript. ASP. Photoshop. Articles. FORUM Contact us

©2000-2014 plus2net.com All rights reserved worldwide Privacy Policy Disclaimer