An open API service indexing awesome lists of open source software.

https://github.com/nathaniel1024/php-login-registration-system

A secure login and registration system built with PHP, MySQL, HTML, and CSS. This project includes user authentication, password hashing, session management, and a "Forgot Password" feature using PHPMailer to send reset links via Gmail.
https://github.com/nathaniel1024/php-login-registration-system

css gmail-smtp html mysql php phpmailer responsive-design smtp sql

Last synced: about 2 months ago
JSON representation

A secure login and registration system built with PHP, MySQL, HTML, and CSS. This project includes user authentication, password hashing, session management, and a "Forgot Password" feature using PHPMailer to send reset links via Gmail.

Awesome Lists containing this project

README

          

# PHP-Login-Registration-System
A secure login and registration system built with PHP, MySQL, HTML, and CSS. This project includes user authentication, password hashing, session management, and a "Forgot Password" feature using PHPMailer to send reset links via Gmail.

## Features
- User Registration with secure password hashing
- Login authentication with session management
- Forgot Password functionality using PHPMailer
- Email verification for password reset
- Mobile-friendly responsive design
- Secure input validation and error handling

## Technologies Used
- **Backend:** PHP
- **Database:** MySQL
- **Frontend:** HTML, CSS
- **Email Handling:** PHPMailer (SMTP with Gmail)

## Installation
1. Clone this repository:
```sh
git clone https://github.com/nathaniel1024/PHP-Login-Registration-System.git

- Use the following SQL script to create the `users` and 'password_resets' table:

```sql
CREATE TABLE `table_name`.`users` (
`id` INT NOT NULL AUTO_INCREMENT ,
`name` VARCHAR(255) NOT NULL ,
`email` VARCHAR(255) NOT NULL ,
`password` VARCHAR(255) NOT NULL ,
PRIMARY KEY (`id`),
UNIQUE (`email`)
) ENGINE = InnoDB;

CREATE TABLE `table_name`.`password_resets` (
`id` int(11) NOT NULL,
`email` varchar(255) NOT NULL,
`token` varchar(100) NOT NULL,
`expires` datetime(6) NOT NULL
) ENGINE = InnoDB;

### Desktop View


Desktop 1
Desktop 2
Desktop 3

### Mobile View


Mobile 1
Mobile 2
Mobile 3