Writting A Simple Login
September 26, 2008
One of the things that I marvel at is how many first time php users clamor for a login function on their pages. What are they going to do once they get users? How are they going to keep them interested in their sites? Well regardless if you’re interested in developing a login function for your site, I can certainly help out with that.
So the first thing we’re going to want to do is create a form. You can put this form on your website or on a separate login page. This is what the html will look like.
<form name="form1" method="post" action="processlogin.php">
<label>
Username:
<input type="text" name="username" id="username">
</label>
<label>
Password
<input type="text" name="password" id="password">
</label>
<label>
<input type="submit" name="submit" id="submit" value="Submit">
</label>
</form>
So in order for the form to do anything we need to make a php page called processlogin.php. We also need to have a database already set up with a user in it, I’m going to leave that up to you for now.
As always we want to open up a php page:
<?
Next we need to define our database:
mysql_connect("localhost", "root", "password") or die(mysql_error());
mysql_select_db("mydb") or die(mysql_error());
Now we can start working. We’re going to check and see if the user put in any information into username, if so we’ll take the information they gave us in the form and assign in to variables.
if($_POST['username'] != NULL){
$username = $_POST['username'];
$password = $_POST['password'];
Now we’re going to run a query checking the database for an entry that matches our username and password.
$result = mysql_query("SELECT * FROM users WHERE username = '".$username."' AND password = '".$password."'");
Next we check to see if anything is returned, if there isn’t we display an error.
if($row['username'] == NULL){
echo "Your Username or Password is Incorrect!";
}else{
$_SESSION['name'] = $username;
header('location:/index.php');
}
We are now left with our final else statement that will only display if the user hasn’t entered anything into the form. This of course is a normal safety measure that would be done using javascript, but in this case we’ll add it in for our basic login.
}else{
echo "You must fillout the login form.";
}
And now we close the php document.
?>
And that is all there is to it. As I said this login is very flawed, there should be a lot of checking going on before the form is submitted, usually done with javascript, we also should be parsing out the user entered values to ensure that we won’t be victim to an SQL Injection, but alas this is but a simple login form. So now that you have that under your belt you can continue working on your social networking site.
October 1, 2008 at 11:49 am
[...] 1, 2008 This article is a continuation of my previous article Writing A Simple Login. I came to the realization that our login that we created earlier was not at all secure, so I [...]