How To Create A Login System In PHP For Beginners | Procedural MySQLi | PHP Tutorial

Neha Sharma
Neha Sharma
14 Jan 2022

In this PHP tutorial you will learn how to create a login system in PHP from, and how to show content after being logged in. You will also learn about error handlers, and MySQLi databases, which includes how to make a login form and a signup form.

I am aware that this is a very long video, but I promise it will be one of the easiest guides you will ever find on how to create a login system from scratch!

If you get any errors during this tutorial, make sure to check out my solutions at the very bottom of this description! :)


Install XAMPP & a local server:
Regular expressions (search patterns):
PHP Password Recovery System:


00:00:00 - Introduction
00:01:16 - How to get my lesson files
00:02:11 - What will you learn in this video?
00:02:48 - What security will we use?
00:03:41 - It's Procedural PHP, not OOP PHP
00:04:14 - If you get a error along the way...
00:04:48 - A demonstration of what we will make
00:08:20 - What YOU should have ready before we start!
00:12:52 - Creating our Header and Index pages
00:15:57 - Creating our Signup and Login pages
00:26:43 - Creating a connection to our database
00:33:16 - Creating our database
00:42:23 - Creating our Signup script
00:58:23 - Creating our Signup functions
00:58:23 - Testing our Signup system
01:24:46 - Creating Signup page error messages
01:26:47 - Creating our Login script
01:36:35 - Creating our Login functions
01:46:22 - Creating Login page error messages
01:47:47 - Changing our website when user is logged in
01:51:19- Testing our Login system
01:52:20 - Creating our Logout script
01:54:12 - Creating a welcome message when logged in
01:54:44 - Outro


First of all, thank you for all the support you have given me!

I am really glad to have such an awesome community on my channel. It motivates me to continue creating and uploading content! So thank you!

I am now using Patreon to share improved and updated lesson material, and for a small fee you can access all the material. I have worked hard, and done my best to help you understand what I teach.

I hope you will find it helpful :)

Material for this lesson:


Make sure you wrote "mysqli_connect" and NOT "mysql_connect" in the file!

▸"unexpected }"
If you get this error message:
Parse error: syntax error, unexpected '}'
Then it is because you forgot to close a ) or ; somewhere.

▸"unexpected ;"
If you get this error message:
Parse error: syntax error, unexpected ';'
Then it is because you forgot to close a } or ) somewhere. Probably because you made a mistake with your parenthesis near the "empty()" functions in your signup script.

▸"hashed pwd error"
If you get an error in the script when you hash the password, then it is because you decided not to follow my steps exactly in the video when I created the database table. Make sure you DON'T set the varchar() to a lower value! When you hash the password it will take up a lot of space in this column, and if you set a lower number then it won't fit!

▸"signup=success but database is empty?"
Here there might be a few reasons for your error. 1st is that you made a syntax/spelling mistake in your code. And yes you will claim that your code is identical to mine, but in 90% of the cases people claim this, I still find a syntax error in their code. So check your code for errors!
2nd reason is that MAMP seems to cause a lot of issues for people. Therefore try using XAMPP and make sure you write the same as me in the file.
3nd reason might be because you didn't follow the tutorial 100% when we set up the database at the beginning.

HTTP ERROR 500 is a server error, meaning that you are most likely using an outdated version of apache or mysql. Try updating your servers and make sure that you are using the latest version of PHP.

Show more

4 Comments Sort By
Zahoor Ullah
Zahoor Ullah 5 months ago


0 0 Reply
desertvillage 7 months ago


0 0 Reply
mustqeem 7 months ago


0 0 Reply
Explore More
Explore More 7 months ago

Please like share comment and subscribe

0 0 Reply
Show more

Up next