Home » Programming » Developing a Login System with PHP and MySQL

RSS Fardin in Bremen

  • 19th century Market on the Grand Place of Brussels June 14, 2009
    by: Ibu ClaireThe main market of Brussels has been used as a market, since its creation beginning 10th century.Vegetables and poultry were sold, but also birds maintained into cages for their singing...At the end of 17th century, King Louis the 14th of France willing to conquer the Low Countries(name of Belgium at that time), bombed […]
  • Manneken-Pis June 14, 2009
    by : Ibu ClaireManneken-Pis (a 100m. away from the Grand-Place)This little 17th C. boy is supposed to be the oldest inhabitant of the city of Brussels. He is supposed to have gotten lost, and when found back, he was in this positon !His family was so happy that they offered a water-fontain to the inhabitants […]
  • Place Royale Brussels May 30, 2009
    by: Ibu ClaireThis square was built on the ruins of a previous royal palace, that burned out around 1715. Around 1780, huge works started in the "classical" style inspired by the castle of Versailles (France). It was supposed to be used for military parades,as the new palace was built "around the corner"Archeological researches were made […]
  • Atomium of Brussels 1958 May 21, 2009
    by: Ibu ClaireWas erected in 1958 for the World Exhebition. It represents a molecule of cristal iron and symbolizes the 9 provinces of Belgium. Each sphere has a diameter of 18 m.It is 102m. high and weighs 2400 tons. The designer was Ingenior André Waterkeyn.For its 5Oth anniversary, it was completely restaured,with partly by private […]

RSS Laravel

  • If You Read One Article About , Read This One
    Laravel If You Read One Article About , Read This One Benefits of Choosing the Best Funeral Home Losing a family member is really tough. Immediate family and friends are affected by the loss. unexpected expenses come up when bereaved. Choosing the right funeral home can be quite beneficial. Having the burial planned for you […]
  • The 10 Laws of And How Learn More
    Laravel The 10 Laws of And How Learn More How to Identify the Best Wedding Dress Store As you will be preparing for the day you will get married to the love of your life, you will have to make sure that you will acquire the best gown for your d day. This is by […]
  • The Best Advice About I’ve Ever Written
    Laravel The Best Advice About I’ve Ever Written Psychoanalysis to Understand Post Traumatic Experiences You may have had a really traumatic experience at one point in your life but what that thing happened, you might have not given it much thought or even forget about it as soon as it passed. The next year, you […]
  • Why Aren’t As Bad As You Think
    Laravel Why Aren’t As Bad As You Think Why Selling Your FedEx Routes Benefits You? In every turn and take there is a reason. And you sure have been hearing about people selling their routes, but quite honestly you haven’t thought about one day you will be in need of such information because you too […]

Developing a Login System with PHP and MySQL

by: John L

Most interactive websites nowadays would require a user to log in into the website’s system in order to provide a customized experience for the user. Once the user has logged in, the website will be able to provide a presentation that is tailored to the user’s preferences.

A basic login system typically contains 3 components:

1. The component that allows a user to register his preferred login id and password
2. The component that allows the system to verify and authenticate the user when he subsequently logs in
3. The component that sends the user’s password to his registered email address if the user forgets his password

Such a system can be easily created using PHP and MySQL.

Component 1 – Registration

Component 1 is typically implemented using a simple HTML form that contains 3 fields and 2 buttons:

1. A preferred login id field
2. A preferred password field
3. A valid email address field
4. A Submit button
5. A Reset button

Assume that such a form is coded into a file named register.html. The following HTML code excerpt is a typical example. When the user has filled in all the fields, the register.php page is called when the user clicks on the Submit button.

[form name=”register” method=”post” action=”register.php”] [input name=”login id” type=”text” value=”loginid” size=”20″/][br] [input name=”password” type=”text” value=”password” size=”20″/][br] [input name=”email” type=”text” value=”email” size=”50″/][br] [input type=”submit” name=”submit” value=”submit”/] [input type=”reset” name=”reset” value=”reset”/] [/form]

The following code excerpt can be used as part of register.php to process the registration. It connects to the MySQL database and inserts a line of data into the table used to store the registration information.

@mysql_connect(“localhost”, “mysql_login”, “mysql_pwd”) or die(“Cannot connect to DB!”);
@mysql_select_db(“tbl_login”) or die(“Cannot select DB!”);
$sql=”INSERT INTO login_tbl (loginid, password and email) VALUES (“.$loginid.”,”.$password.”,”.$email.”)”;
$r = mysql_query($sql);
if(!$r) {
$err=mysql_error();
print $err;
exit();
}

The code excerpt assumes that the MySQL table that is used to store the registration data is named tbl_login and contains 3 fields – the loginid, password and email fields. The values of the $loginid, $password and $email variables are passed in from the form in register.html using the post method.

Component 2 – Verification and Authentication

A registered user will want to log into the system to access the functionality provided by the website. The user will have to provide his login id and password for the system to verify and authenticate.

This is typically done through a simple HTML form. This HTML form typically contains 2 fields and 2 buttons:

1. A login id field
2. A password field
3. A Submit button
4. A Reset button

Assume that such a form is coded into a file named authenticate.html. The following HTML code excerpt is a typical example. When the user has filled in all the fields, the authenticate.php page is called when the user clicks on the Submit button.

[form name=”authenticate” method=”post” action=”authenticate.php”] [input name=”login id” type=”text” value=”loginid” size=”20″/][br] [input name=”password” type=”text” value=”password” size=”20″/][br] [input type=”submit” name=”submit” value=”submit”/] [input type=”reset” name=”reset” value=”reset”/] [/form]

The following code excerpt can be used as part of authenticate.php to process the login request. It connects to the MySQL database and queries the table used to store the registration information.

@mysql_connect(“localhost”, “mysql_login”, “mysql_pwd”) or die(“Cannot connect to DB!”);
@mysql_select_db(“tbl_login”) or die(“Cannot select DB!”);
$sql=”SELECT loginid FROM login_tbl WHERE loginid=’”.$loginid.”’ and password=’”.$password.”’”;
$r = mysql_query($sql);
if(!$r) {
$err=mysql_error();
print $err;
exit();
}
if(mysql_affected_rows()==0){
print “no such login in the system. please try again.”;
exit();
}
else{
print “successfully logged into system.”;
//proceed to perform website’s functionality – e.g. present information to the user
}

As in component 1, the code excerpt assumes that the MySQL table that is used to store the registration data is named tbl_login and contains 3 fields – the loginid, password and email fields. The values of the $loginid and $password variables are passed in from the form in authenticate.html using the post method.

Component 3 – Forgot Password

A registered user may forget his password to log into the website’s system. In this case, the user will need to supply his loginid for the system to retrieve his password and send the password to the user’s registered email address.

This is typically done through a simple HTML form. This HTML form typically contains 1 field and 2 buttons:
# A login id field
# A Submit button
# A Reset button

Assume that such a form is coded into a file named forgot.html. The following HTML code excerpt is a typical example. When the user has filled in all the fields, the forgot.php page is called when the user clicks on the Submit button.

[form name=”forgot” method=”post” action=”forgot.php”] [input name=”login id” type=”text” value=”loginid” size=”20″/][br] [input type=”submit” name=”submit” value=”submit”/] [input type=”reset” name=”reset” value=”reset”/] [/form]

The following code excerpt can be used as part of forgot.php to process the login request. It connects to the MySQL database and queries the table used to store the registration information.

@mysql_connect(“localhost”, “mysql_login”, “mysql_pwd”) or die(“Cannot connect to DB!”);
@mysql_select_db(“tbl_login”) or die(“Cannot select DB!”);
$sql=”SELECT password, email FROM login_tbl WHERE loginid=’”.$loginid.”’”;
$r = mysql_query($sql);
if(!$r) {
$err=mysql_error();
print $err;
exit();
}
if(mysql_affected_rows()==0){
print “no such login in the system. please try again.”;
exit();
}
else {
$row=mysql_fetch_array($r);
$password=$row[“password”];
$email=$row[“email”];

$subject=”your password”;
$header=”from:you@yourdomain.com”;
$content=”your password is “.$password;
mail($email, $subject, $row, $header);

print “An email containing the password has been sent to you”;
}

As in component 1, the code excerpt assumes that the MySQL table that is used to store the registration data is named tbl_login and contains 3 fields – the loginid, password and email fields. The value of the $loginid variable is passed from the form in forgot.html using the post method.

Conclusion

The above example is to illustrate how a very basic login system can be implemented. The example can be enhanced to include password encryption and additional functionality – e.g. to allow users to edit their login information.

RSS Geospatial

  • 3 Tips from Someone With Experience
    Geospatial 3 Tips from Someone With Experience Vital Information to Know About Bottled Water Water is essential to the life of all living organisms; thus, the term water is life. Water is used for different purposes in industrial purposes as raw material, for cleaning products, for cooling machines and as a reagent. Water is also […]
  • Smart Ideas: Revisited
    Geospatial Smart Ideas: Revisited Factors to Consider When Choosing a Dental Clinic Center What is a dental clinic? A dental clinic is a health Centre where oral services are rendered. People are advised to visit the dental clinic regularly so that they can ensure oral hygiene health which is a very important part of the […]
  • What Almost No One Knows About
    Geospatial What Almost No One Knows About Tips to Look into When Hiring Janitorial Services Cleanliness is a significant point that needs to be adhered be it in a residential or commercial place. To job to be done perfectly, then it is relevant for an individual to hire the services of professionals. Due to the […]
  • How to Achieve Maximum Success with Services
    Geospatial How to Achieve Maximum Success with Services The Benefits of Attending a Yoga Retreat A yoga retreat is a perfect option that you may consider when you are planning to go out on a holiday. With a yoga retreat, you get to benefit immensely. You will have an opportunity to relax your body and […]