Добрый день друзья, продолжаю небольшую серию уроков по PHP и AJAX, сегодня у нас написание простой системы регистрации пользователя. В данной статье мы будем использовать PHP, MySQL(PDO), JavaScript. Урок рассчитан на новичков, потому я не буду использовать ООП и сторонние пакеты, а наоборот покажу как на чистом PHP написать регистрацию. Для обработки формы регистрации мы будем использовать javascript, отправляя запрос на сервер и получая ответ. Давайте приступим.
Архитектура проекта
Архитектура проекта у нас очень простая. Мы имеем в корне index.php
, это будет страница с формой регистрации, на ней же будем выводить список зарегистрированных пользователей. bootstrap.php
— файл в корне, в который мы будем подключать файлы для работы с базой данных, наши функции и т.д., а он в свою очередь будет подключен в index.php
.
Форма регистрации
В файл index.php
вставим следующий код:
В этот файл мы подключаем библиотеку стилей bootstrap, а так же sweetalert — библиотека для красивых уведомлений и конечно же jQuery)
Отправка формы
Для отправки формы регистрации нам нужен javascript. Создадим папку assets/js и в ней файл form.js, вставляем следующий код в файл:
В скрипте мы при помощи jquery перехватываем отправку формы и выполняем POST
запрос на handler.php
, скрипт который обрабатывает данные с нашей формы. При успешной регистрации пользователя мы получим уведомление и страница будет перезагружена, при не успешной — форма будет подсвечена красным цветом.
Дополнительные файлы
bootstrap.php
Ничего особенного, место в котором стартует приложение и подключаются файлы с функциями и т.д.
db.php
Написал минимальное количество функций для работы текущего приложения.
function get_connection
— подключение к базе данных.
function insert
— вставка данных в таблицу.
function getUserByEmail
— ищем пользователя по имейлу.
function getUsersList
— получаем список пользователей.
functions.php
Файл в котором выполняем регистрацию пользователя и валидацию входных данных с формы.
В базе данных вам нужно выполнить запрос:
Весь проект я сделал в докере и приложил файлы конфигурации, потому проблем с запуском быть не должно. После запуска проекта вы можете открыть в браузере http://localhost:8080
и должны увидеть страницу регистрации.
Если какие-то поля были заполнены не верно, вы получить вот такую форму
Как видите, регистрация на php используя ajax не такая уже и сложная задача. Файлы проекта вы можете скачать с github — https://github.com/adminnotes/ajax-php-registration
Я все поставил, нечего не работает, ругаеться на string, и я
Нужен текст ошибки, без него не получится разобраться
Никакой ошибки, но форма не отправляет ничего. Просто ничего не происходит.
где вообще файл handler.php
В конце статьи есть ссылка на github с кодом проекта.
Увидел файлы, скинул себе, настроил, не работает. Не записывает в БД, но если в ручную в БД заполнить, то информацию выводит!