PHP: Complete Login and Registration System with PHP & MYSQL
4.5 (573 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
12,815 students enrolled

PHP: Complete Login and Registration System with PHP & MYSQL

Build a Complete & Secure PHP Login and Registration System with PHP and MySQL - Email Activation and lots more
4.5 (573 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
12,815 students enrolled
Last updated 12/2018
English
English [Auto]
Current price: $69.99 Original price: $99.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 8 hours on-demand video
  • 4 articles
  • 12 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Code a registration form with PHP
  • Code a secured Login Form with PHP
  • Create and manipulate database content with PHP
  • PHP System Security and in-depth Validation
  • Automatically Logoff Inactive Users with PHP code
  • Send Account Activation Link by Email using PHP
  • Protecting Against CSRF Attack with Unique Token Generation
  • Password Recovery, bad, good and best options in PHP
  • Keep user Logged In (Remember Me) with PHP
  • Code Refactoring
  • Learn PHP basic workflow
  • Write clean and reusable PHP code
  • Prompt support and value for your money
  • Access to my Introduction to Programming in PHP Course on Devscreencast dot com
  • Token Based Password Reset Functionilty
  • Blocking Bots and Spams with reCAPTCHA
Course content
Expand all 56 lectures 07:55:22
+ Introduction to the Course
2 lectures 07:32

I'll go over the broad topics we'll cover in the course, as well as how the finish product of the authentication system that we will develop in the course. I'll also covered what is required to take this course, target audience and the benefits that will be derived from taking this course.

Preview 07:01
How to ask for help
00:31
+ Database Setup
3 lectures 14:14

In this lectures we'll go over creating a database and the table for storing user information and also create the project files.

Database Setup and Directory Structure
05:01

Test your knowledge of PDO

Database Connection Quiz
4 questions

In this lecture we'll code our database connection script and test our connection

Database Connection Script with PDO
09:13

Test students understanding of the concepts discussed in this section

Practice Activity
1 page
+ Building a Registration and Login System
8 lectures 01:22:55

In this lectures we'll design the markup for registration and login form, index and logout page.

Preview 07:38
In this lecture we'll code the registration form and create demo user accounts
Registering Users
13:48

In this lecture we'll learn how to validate our registration form

Form Validation - Part 1
08:25

In this lecture we'll learn how to refactor our validation code and improve the functionalities

Form Validation - Part 2
09:51
In this lecture we'll code the login form and signin users
Signing In
17:07

Creating a simple contact form to collect username, email address and message, this activity will help reinforce the skills learnt in this section such as validating HTML form, connecting and adding records to the database

Practice Activity
1 page

In this lecture you will learn how to add password reset functionality to the auth system while in option 2 (Lecture 29) you will learn how to send password reset link to users email address and program the recovery script.

Password Reset - Option 1
09:54

In this lecture you will learn how to use PHP Custom Functions to make code more efficient and clean.

Using PHP Custom Functions for Code Refactoring
16:12
+ User Interface Design - Bootstrap
5 lectures 41:18
Lets take a break from coding and spend some time improving the user interface of this system.

In this lecture we'll pull in Bootstrap files and set up things

Enhancing the User Interface - Basic Template
09:20
Enhancing the Menu and Messaging
Enhancing the User Interface - Menu and Messaging
05:15
Learn how to  Automatically Activate current page Menu.
Enhancing the User Interface - Activating Menu Items Automatically
04:00
Have you tried Sweet Alert? You will love it.
Enhancing the User Interface - Elegant Messaging With Sweet Alert
12:45
+ Adding More Functionalities
2 lectures 24:06

Lets add the ability to remember logged in users when they choose to

Remember Me (Keep User Logged in)
13:33

In this lecture you will learn how to guard any PHP system and logout users automatically after a predefined period of inactivity.

Enhance System Security and Logout Inactive Users Automatically
10:33
+ Profile
5 lectures 44:16

Students will learn how to display registered users information from the database

View Profile
06:40

Students will learn how to allow registered users update their record in the database using HTML form

Update Profile
11:12

In this lecture you will learn how to add and display a default profile picture for registered users

Display Default Profile Picture for Users
05:26
In this lecture you will learn how to ensure that user upload only specific file type
Limit File Upload to be only Valid Image
11:25

In this lecture you will learn how write a function that allows users to add a picture to their profile and moves the picture to a location that we define.

Allow Users to Upload Profile Picture - Option 1
09:33

This quiz will test your understating of PHP Super Global Variables

Super Global Variables
4 questions
+ Account Activation
5 lectures 26:39

In this lecture you will learn how to use PHPMailer class and Mandrill API for sending Email from localhost using WAMP Server, in the next lecture you will learn to how to prepare and send activation link to user email address.

P.S: As at the time of recording Mandrill API was still free, consider using the GMAIL option (See the PDF file for instruction).

Setup PHPMailer and Mandrill API on localhost (WAMPSERVER)
07:10
Setup PHPMailer to Send Mail from localhost with XAMPP Server and GMAIL Option
00:11

In this lecture you will learn how to prepare and send account activation link to users as they register, you will also learn to change the database structure to accommodate changes.

Prepare and Send Activation Link to registered User Email Address
08:56

In this lecture you will learn how to program account activation script and also update the login script to allow access to only those users that have activated their account.

Program Activation Script and Update Login Script
10:15
How to Review This Course
00:06
+ Security and more features
14 lectures 02:45:53

In this lecture you will learn how to send password reset link to users email address and code the password recovery script.

Password Reset - Option 2 (Send Password Reset Link to Email Address)
10:36

Invalid Username Bug Fix (Highlighted by a Student.

Invalid Username Bug Fix (Highlighted by a Student)
02:37

In this lecture you will learn about Cross Site Request Forgery (CSRF) Attack and how to secure your PHP web app against such attack.

Protecting Against CSRF Attack
19:17

In this lecture you will learn how to add change password functionality to the system so that registered members can change their login password.

Change Account Password
11:54

In this lecture you will learn how to program the functionality to allowregistered users deactivate their account and preserve the account information for 14 days (Facebook style).

Deactivate Account (Facebook Style)
15:46

In this lecture you will learn how to code the functionality to Auto Activate a users account if the user attempts to login within 14 days after deactivating their Account.

Update Login Script to Auto Login Users if they Attempts to Login Within 14 days
09:08

In this lecture you will learn how to delete the account and related properties of a user who has deactivated their account and has not logged in again after 14 days.

Permanently Delete Deactivated Account after 14 days
16:54

In this lecture you will learn to code the functionality that will auto delete accounts that has not been activated 3 days after registration, in order to keep the system clean.

Auto Delete non-activated Accounts 3 days After Signup
09:18

In this lecture you will learn how to upload a system developed locally to a remote server so that it can be accessible over the internet.

Uploading the system Online (www)
15:35

In this lecture you will learn how to automate task using Cron Jobs. We create a PHP cron job task that will run once daily calling our script that will delete all non-activate account 3 days after registration and accounts that has deactivated and the user did not logged in after 14 days. 

This is a safe and easy way to keep our database clean and free from inactivate accounts that can create a loophole in our system.

Automating Task with Cron Job
06:31

In this lecture, you will learn how to enhance the security of the current password reset functionality using time based token.  We start be setting up the database, generating the token and sending it to the user’s email. In the next video we update the password reset script to accommodate changes.

Time Based Password Reset Token - Part 1 (Security Update)
14:21

In this lecture you'll update the password reset script, to accommodate changes made in the previous lecture.

Time Based Password Reset Token - Part 2 (Security Update)
16:06

In this lecture you'll learn how to delete already used or expired password reset token.

Time Based Password Reset Token - Part 3 (Security Update)
04:58

In this lecture we shall update the current flow for profile picture upload to make it more flexible and efficient. When a user upload  profile picture we rename it with a random string and store the path in the database and also delete any  old profile picture. 

Allow Users to Upload Profile Picture - Option 2
12:52
+ Interacting With Other Members
6 lectures 44:09
Creating All Members Page
12:14
Creating user public profile
05:37

In this lecture we shall be fixing some bugs

Update Profile and Sanitize Email Bug Fixes
05:00

In this lecture, you learn how to secure project database and mail credentials using a configuration file.

Moving Credentials to a Configuration File
12:41

In this lecture we apply a fix for edit profile so that a user cannot update their email to that of another user.

Fix Duplicate Email Bug When Editting Profile
06:24

In this lecture I will show you how to disable unique check for username, this is an optional lecture skip if you don't want this functionality.

Remove Unique Check for Username (Optional)
02:13
+ Blocking Bots and Spammers with reCAPTCHA
4 lectures 20:07

Let start by creating a reCaptcha app, and updating our system as needed.

Basic Set up of Google reCAPTCHA in Our Login System
04:49

Lets now verify the reCaptcha response with Google to ensure it is valid

Verifying reCaptcha Response With Google Verify API
08:42

Lets now integrate the reCaptcha to work with our login script flow

Integrating reCaptual into Our Login Script Flow
04:12
Making Verify reCaptcha Code Reusable (Refactoring ) and Assignment
Making Verify reCaptcha Code Reusable (Refactoring ) and Assignment
02:24
Requirements
  • Text Editor
  • Understand Basic HTML
  • Already Setup PHP Development Environment running PHP 5.5 or higher, with little understanding of PHP (e.g. you should know what is a variable, an array just basic knowledge)
Description

THE MOST UP-TO-DATE AND COMPREHENSIVE PHP REGISTRATION AND LOGIN SYSTEM COURSE ON THE INTERNET.

CODE IS COMPATIBLE WITH PHP 5.5, 5.6 AND 7 THE LATEST VERSION.

LAST UPDATED 9 May 2017

PHP Login and Registration system step by step -> One of the skill-set that is a must have for any PHP web developer is the ability to code a secure registration and login system. This course is designed to equip you with the fundamental skills needed to create a registration and login system using PHP and MYSQL Database.

Additional resources, quizzes, and assignments will be given throughout this step by step PHP Login and Registration system course, to continually test your knowledge.

You will not just learn how to write a PHP login and registration script but how to build and secure a PHP web application piece by piece.

Some Main Features:

1. Account activation by email, using PHPMailer PHP library 

2. PHP Remember me functionality

3. Secured Password hashing with PHP hash algorithm

4. PHP Password Reset / recovery by email system

5. Protecting Against CSRF Attack with Unique secured PHP Token Generation

6. Custom Functions in PHP (A lot)

7. Change Password in PHP

8. Deactivate Account in PHP

9. Automate Task with Cron Job using PHP 

10. Blocking Bots and Spammers with reCAPTCHA

11. Constantly update mostly based on genuine request from students 

After completing this step by step PHP Login and Registration system course, you would have gained some useful and practical skills that will help you in your goal to become a web developer or give you an edge in your current job.

What other students are saying:

"After spending countless hours searching for a course or tutorial and purchasing two other courses that quite frankly were deep
disappointments I am glad I didn't give up and found this course.
Within a few hours I was able to create a basic login system for a website I'm launching for our department. I appreciated the fact that the content had been recently updated. The problem with the other courses and tutorials I viewed previously were using deprecated functions and it took me a while to figure out why things didn't work! As someone with little to no experience in coding php, the course was easy to understand and follow. I also appreciated the simplicity of the code so troubleshooting was easy to do. I am very happy with this course." - Rosa Davis

"The course is very well structured and clear to understand and learn.
The instructor is extremely knowledgeable and helpful. He even
troubleshooted my code. Gladly recommend this course and the instructor." - Saroj Thapa

Timely Support !

If you ever encounter any problem why taking this course, don't worry I am always here to help and guide you through.

Who this course is for:
  • This course is for anyone interested in understanding how user authentication works in PHP
  • Want to enhance your PHP skill set as a web developer
  • Those who know the basic of PHP and wants practical skills to develop real world application