Як зробити реєстрацію та авторизацію користувачів на сайті

Як зробити реєстрацію та авторизацію користувачів на сайті

Не так давно один з моїх відвідувачів попросив мене написати статтю про те, як зробити реєстрацію та авторизацію користувачів на сайті. Власне, виконую його прохання, і в цій статті я розповім про те, як це робиться.

Існує кілька способів створення реєстрації та авторизації користувачів, але в цій статті я розберу свій улюблений - через механізм сесій або cookie.

Насамперед, якщо Ви хочете зробити реєстрацію у себе на сайті, то необхідно розуміти, де будуть зберігатися дані про користувачів. Можна зберігати в звичайному текстовому файлі, в XML-файлі, або в базі даних. Перші два варіанти - дуже небезпечні, тому не рекомендую Вам ними користуватися. А ось третій варіант - зберігання інформації про користувачів в базі даних - найпопулярніший, і саме цим способом зберігання інформації я раджу Вам користуватися.

З місцем зберігання визначилися. Тепер перейдемо безпосередньо до алгоритму авторизації:

  1. Створити форму реєстрації на HTML.
  2. Отримати дані з форми в скрипті-обробнику.
  3. Перевірити отримані дані, і якщо вони є некоректними, то зробити редирект назад на форму реєстрації.
  4. Якщо дані коректні, то записати їх в базу даних.



Ось і весь процес реєстрації користувача на сайті. Тобто реєстрація - це збереження інформації про користувача на сайті.

Подальшим пунктом є авторизація користувача на сайті, однак, перш ніж до нього переходити, розповім про один важливий момент в формі реєстрації - пароль. Я Вам настійно рекомендую не зберігати паролі у відкритому вигляді (наприклад так, "123456"). Обов`язково їх шифруйте, хоча б за допомогою функції md5 (). І в базі даних зберігайте саме зашифрований пароль.




Тепер авторизація. Перше, що Ви повинні зрозуміти - це те, що інформація про авторизацію повинна десь зберігатися. Найпростіший варіант - це зберігання інформації в сесії (або в cookie). А тепер алгоритм:

Відео: Форма реєстрації. Як створити форму реєстрації php

  1. Створити форму авторизації користувача на HTML, куди користувач повинен буде ввести свій логін і пароль.
  2. В скрипті-обробнику прийняти дані від користувача. Якщо Ви мене послухали, і зберігайте шифровані паролі в базі даних, то спочатку шифруйте отриманий пароль. Якщо ж в базі даних лежать відкриті паролі, то шифрувати не треба.
  3. Перевірити вірність введених даних, і якщо логін і пароль співпадають з існуючим користувачем в базі даних, то записуєте в cookie або сесію інформацію з логіном і шифрованих паролем (або відкритим паролем, також якщо він не шифрували).
  4. Якщо логін і / або пароль введені невірно, то робити редирект назад на форму авторизації.

Тепер у Вас є необхідна інформація про авторизації користувача, яка зберігається в його cookie або на сервері (якщо сесія). Фактично, тепер Вам потрібно цю інформацію перевіряти на кожній сторінці сайту і звіряти її аналогічно перевірці форми авторизації. Тобто зчитуєте з cookie (Сесії) логін і пароль, і перевіряєте його. Якщо вони вірні, то показуєте одну сторінку (для зареєстрованих користувачів), а якщо невірні, то показуєте іншу сторінку (для гостей).

Відео: як зробити реєстрацію та авторизацію на сайті

І останнє. Як робиться кнопка "вихід"? Дуже просто. При натисканні на цю кнопку, стираються cookie, або сесія. Таким чином, користувач автоматично вилітає з сайту.

Як бачите, все елементарно, але при реалізації цього алгоритму у Вас обов`язково виникне безліч питань. Наприклад, що робити при реєстрації користувача, логін якого вже є в базі даних. Реалізація різних перевірок вхідних даних, реалізація перевірки існування e-mail та інше - все це є досить складним, якщо Ви робите це в перший раз. Однак, самий сік я видав. Якщо будуть питання при реалізації, то питайте або на форумі, або в коментарях.

У даній статті я привів лише алгоритм, а щоб навчитися його реалізовувати потрібно знати PHP і MySQL, які максимально докладно розібрані в цьому навчальному курсі: https://srs.myrusakov.ru/php

Поділися в соціальних мережах:

Схожі
Вийшов відеокурс з основ phpВийшов відеокурс з основ php
Обробка форми в phpОбробка форми в php
Як створити свій api на сайтіЯк створити свій api на сайті
Фсб домагається повного доступу до даних інтернет-користувачівФсб домагається повного доступу до даних інтернет-користувачів
Реалізація пошуку на сайті через phpРеалізація пошуку на сайті через php
Як зробити коментування на сайтіЯк зробити коментування на сайті
Як зробити типи користувачів на phpЯк зробити типи користувачів на php
MysqlMysql
Як зберігати дані в форміЯк зберігати дані в формі
Як створити голосування на сайтіЯк створити голосування на сайті
» » Як зробити реєстрацію та авторизацію користувачів на сайті