Создание простой системы регистрации пользователей на PHP и MySQL. Получение кода активации и его регистрация

Оборудование 09.08.2021
Оборудование

Зарегистрироваться на госуслугах и создать свой личный кабинет для доступна ко всем услугам официального сайта. Доступ к порталу открыт для физических и юридических лиц.

Инструкция: регистрация на сайте www.gosuslugi.ru

Чтобы зарегистрировать свой личный профиль физического лица на портале, вам необходимо выполнить три простых этапа, которые состоят из заполнения всех важных данных и подтверждения личности.

  • Этап 1 - Зарегистрироваться на портале. Перейдите на официальный сайт государственных услуг, на страницу заполнения данных - https://esia.gosuslugi.ru/registration/ и введите свою фамилию, имя, номер мобильного телефона (в формате +7 123 4567890) и адрес электронной почты.

    После ввода информации нажмите на кнопку отправки. Сразу же после этого к вам на мобильный телефон придёт код для подтверждения - введите его в соответствующее окно и нажмите на кнопку "Продолжить".

В завершении, вам нужно придумать пароль, который нужно запомнить или записать. Старайтесь придумать максимально сложный пароль, чтобы в ваш личный кабинет никто, кроме вас, не смог получить доступ.

Не забудьте подтвердить адрес почты. На него вам должно прийти письмо с указанием ссылки, по которой необходимо перейти для подтверждения.

  • Этап 2 - Ввести данные. Важная часть процесса создания личного кабинета - это внесение информации паспорта и СНИЛС. Всё это нужно, чтобы предоставить вам основные виды государственных услуг через официальный сайт Госуслуги.

    Введите основную информацию, точно также, как указано в паспорте: фамилия, имя, отчество, пол, дата рождения, место рождения, гражданство, серия и номер паспорта, кем выдан, дата выдачи и код подразделения. Не забудьте ввести страховой номер индивидуального лицевого счёта - СНИЛС.

  • Этап 3 - Подтвердить личность. Чтобы ваш профиль на сайте государственных услуг считался подтвержденным, необходимо обратиться в МФЦ, Пенсионный фонд России или любое другое учреждение для подтверждения личности. С собой необходимо иметь паспорт и СНИЛС. Ещё одним удобным способом подтверждения личности на сайте Госуслуг является верификация через Интернет-Банк.

После выполнения всех этапов заполнения информации и подтверждения учётной записи, вы сможете выполнить вход в личный кабинет Госуслуги и пользоваться порталом без каких-либо ограничений, заказывая все доступные услуги для граждан.

Видео о регистрации физического лица на сайте Госуслуги.ру

Личный кабинет для юридического лица - регистрация

На портале Госуслуги у вас есть возможность зарегистрировать и учетную запись юридического лица - это могут сделать владелец или официальный представитель организации, имеющий право вести какую-либо деятельность от её имени.

Однако, создание аккаунта для учреждения возможно только после верификации профиля вышеупомянутого физического лица.

Как пройти проверку аккаунта?
  • Первый вариант – это создание персонального профиля для управляющего или другого представителя компании, владеющего полномочиями. Для этого нужно нажать на ссылку «Регистрация» и заполнить поля следующей информацией: ФИО, мобильный номер и e-mail. На указанные реквизиты придет проверочный код, который нужно ввести в соответствующей строке.

    На следующем шаге вам предстоит придумать пароль для последующего доступа к личному кабинету и приступить к созданию «Стандартного» профиля. Здесь вам необходимо заполнить поля со СНИЛС и паспортными данными. После успешной проверки вам предложат подтвердить свой аккаунт.

    Для завершения процесса, вам необходимо выбрать одну из компетентных организаций, указанных на сайте, и явиться с паспортом и СНИЛС для получения верификации.

  • Есть и второй, более простой вариант . Вы сможете подтвердить свою личность, используя электронную подпись юридического лица. Но это станет возможным только в том случае, если в сертификате содержатся данные удостоверяющие вашу личность, в том числе: СНИЛС и паспорт.

    Кроме того, чтобы использовать электронную подпись, на вашем устройстве должно быть установлено соответствующее программное обеспечение.

Регистрация через мобильное приложение


Зарегистрироваться на Госуслугах можно с помощью мобильного приложения, которое доступно для скачивания с официальных источников. Имеются версии для Windows Mobile, Android и iOS.

Регистрация через мобильное приложение на портале государственных услуг www.gosuslugi.ru практически ничем не отличается от вышеупомянутых способов. Откройте программу на телефоне или планшете, нажмите на кнопку "Зарегистрироваться" и начните вводить все необходимые данные, которые требуются для создания личного кабинета.

Если не удаётся зарегистрироваться

Я не могу зарегистрироваться на госуслугах, система пишет, что такой пользователь уже есть.

Причины: Возможно Вы раньше уже регистрировали аккаунт на портале госуслуг и забыли об этом. Также могла возникнуть ситуация, когда при визите в МФЦ или Пенсионный Фонд могли предложить заодно зарегистрировать для Вас аккаунт. А Вы не придали этому значения.

Решение: В любом случае ситуация поправима. Если система не даёт зарегистрироваться из-за того, что пользователь с таким СНИЛС или номером телефона уже существует, Вы можете воспользоваться процедурой восстановления пароля. Введите СНИЛС в соответствующее поле, запросите восстановление пароля и, пройдя процедуру, Вы сможете войти в личный кабинет.

.
В этой статье мы добавим к нашей регистрации проверку e - mail адреса, автоматический вход и восстановление забытого пароля . Прежде чем приступать к выполнению урока, убедитесь, что у Вас на сервере работает функция mail().

Начнем с добавления полей в таблицу « users » . Нам нужно поле для хранения e-mail адреса, поле для состояния пользователя (0 - неактивирован, 1 - активирован) и поле с датой регистрации.


Ваш E-mail *:



Затем нужно подправить save_user.php , добавив проверку на корректность e-mail адреса и отправку письма для подтверждения регистрации. В письме находится ссылка с двумя переменными, передающимися методом get: логин и сгенерированный, уникальный для каждого пользователя, код. Код нам нужен, чтобы пользователь не смог активировать свой аккаунт без письма, а это даст нам уверенность, что введенный адрес почты, действительно, принадлежит ему. Добавим следующий код, после извлечения из глобальных переменных отправленных данных:

If (isset($_POST["email"])) { $email = $_POST["email"]; if ($email == "") { unset($email);} }
if (empty($login) or empty($password)or empty($code) or empty($email))
//добавим переменную с e - mail адресом
//если пользователь не ввел логин или пароль, то выдаем ошибку и останавливаем скрипт
{
exit ("Вы ввели не всю информацию, вернитесь назад и заполните все поля!"); //останавливаем выполнение сценариев
}
if (!preg_match("/+@+\.{2,3}/i", $email)) //проверка е-mail адреса регулярными выражениями на корректность
{exit ("Неверно введен е-mail!");}

В запросе добавления нового пользователя необходимо дописать и дату регистрации. Если в базу удачно вставлены данные и пользователь зарегистрирован, то нужно отправить сообщение на введеный адрес:

// если такого нет, то сохраняем данные
$result2 = mysql_query ("INSERT INTO users (login,password,avatar,email,date) VALUES("$login","$password","$avatar","$email",NOW())");
// Проверяем, есть ли ошибки
if ($result2=="TRUE")
{
$result3 = mysql_query ("SELECT id FROM users WHERE login="$login"",$db);//извлекаем идентификатор пользователя. Благодаря ему у нас и будет уникальный код активации, ведь двух одинаковых идентификаторов быть не может.
$myrow3 = mysql_fetch_array($result3);
$activation = md5($myrow3["id"]).md5($login);// код активации аккаунта . Зашифруем через функцию md5 идентификатор и логин. Такое сочетание пользователь вряд ли сможет подобрать вручную через адресную строку.
$subject = "Подтверждение регистрации";//тема сообщения
$message = "Здравствуйте! Спасибо за регистрацию на citename.ru\nВаш логин: ".$login."\n
Перейдите по ссылке, чтобы активировать ваш аккаунт:\nhttp://localhost/test3/activation.php?login=".$login."&code=".$activation."\nС уважением,\n
Администрация citename.ru";//содержание сообщение
mail($email, $subject, $message, "Content-type:text/plane; Charset=windows-1251\r\n");//отправляем сообщение

Echo "Вам на E-mail выслано письмо с cсылкой, для подтверждения регистрации. Внимание! Ссылка действительна 1 час. Главная страница"; //говорим о отправленном письме пользователю
}

Сообщение отправлено! Теперь пользователь откроет его и перейдет по указанной ссылке на страницу, которая будет проверять код активации. Убедившись, что код верный, мы подтверждаем регистрацию, меняя в базе значение поля activation с «0» на «1».

Создаем файл activation.php

E-mail адрес подтвержден, теперь мы знаем, что этот адрес принадлежит данному пользователю, на него можно будет послать пароль, если пользователь его забудет, или другие уведомления. Но в чем различие активированных пользователей, от неактивированных? И те и другие могут зайти на сайт, следовательно, нам нужно ограничить в доступе неактивированных. Откроем файл testreg . php и допишем еще одно условие в запросе к базе:

$result = mysql_query("SELECT * FROM users WHERE login="$login" AND password="$password" AND activation="1"",$db); //извлекаем из базы все данные о пользователе с введенным логином
//мы дописали « AND activation ="1"», то есть пользователь будет искаться только среди активированных. Желательно добавить это условие к другим подобным проверкам данных пользователя

Если пользователь забудет пароль, то для такого случая нужно вывести ссылку на главной странице, по которой он сможет его восстановить, а так же можно сразу поставить чекбокс для автоматического входа.

Автоматический вход.






Зарегистрироваться


Забыли пароль?

Ссылка есть, а файла нет. Давайте же напишем send _ pass . php . В нем мы спросим у пользователя логин и адрес почты. Если введенный e-mail и логин есть в базе, то отправим на него новый пароль, если пользователь забыл старый, ведь мы убедились при регистрации, что адрес почты действителен.

Далее мы сделаем автоматический вход. Работать он будет так: при удачном входе с нажатым чекбоксом в cookie будет вписываться auto = “yes”. Если сервер увидит, что в браузере auto = “yes”, то запустит сессию, а переменные возьмет там же, в cookie. Затем идет проверка запущенных сессий по базе.

Откроем testreg . php и допишем после удачного входа код:

If (isset($_POST["save"])){
//Если пользователь хочет, чтобы его данные сохранились для последующего входа, то сохраняем в куках его браузера

setcookie("id", $myrow["id"], time()+9999999);}
if (isset($_POST["autovhod"])){
//Если пользователь хочет входить на сайт автоматически
setcookie("auto", "yes", time()+9999999);
setcookie("login", $_POST["login"], time()+9999999);
setcookie("password", $_POST["password"], time()+9999999);
setcookie("id", $myrow["id"], time()+9999999);}

Теперь надо запустить в нужном месте сессию, если стоит автоматический вход. Откроем index.php и напишем в самом начале страницы:

Файл CONFIG.PHP

less/reg/?mode=auth">Войти

  • Рекомендуем почитать

    Наверх