ГЛАВНАЯ | HTML | CSS | PHP | JS | ЕЩЁ |

Подтверждения регистрации php подтверждение email php

И наконец-то мы дошли до темы подтверждения регистрации или подтверждение регистрации по емайлу(email) или же просто подтверждение email!

Задача –подтвердить емайл при регистрации

Алгоритм скрипта:

1.Пользователь заполняет данные при регистрации и они записываются куда-то во временный файл, до подтверждения емайла.

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

Не пугайтесь, что пока звучит не очень понятно и не презентабельно! Обещаю! Что к концу страницы, если вы её дочитаете, то все встанет на свои места!

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

Но я вам естественно предлагаю собственный вариант, как это сделать!

Интересно! Что когда я начинал разбираться в этом вопросе – то РЕАЛЬНО! Ничего простого и понятного не нашел, поэтому изобретал свой велосипед!

Мой вариант подтверждения емайла php

И самое главное. Как соединить данные, и ссылку, от которой будет проходить пользователь во время подтверждения регистрации – как это вообще работает, как это самое подтверждение должно срабатывать!? Интересно! Еще как интересно! И когда ты подходишь к такому вопросу как к задачке которую надо решить – всегда будет интересно! 1.Итак, начнем с самой регистрации – в ней мы заполняем форму, в которой есть несколько полей, которые заполняет пользователь!
Когда мы нажимаем отправить должно сработать несколько функций: 2.Для записи данных мы используем простой файл txt. В который мы запишем все данные из формы во временный файл – используем функцию - file_get_contents.
3. Нам нужно создать ссылку, по которой пройдет пользователь и подтвердит регистрацию и свой емайл, для этого нам понадобится метод GET. О котором мы вот только написали.

И… тут начинается самое прикольно! Как сделать, чтобы ссылка и тот временный файл между собой имели какую-то связь, чтобы в скрипте эту связь найти и произошло подтверждение!

ЭТО ПРОСТО! Мы специально предваряя эту страницу написали об уникальном идентификаторе - нам нужен первый вариант
Теперь объединим и выведем предварительные итого выше написанного!
Мы получаем из формы email, пропускаем его через функцию md5 и получаем уникальный идентификатор
md5(ed.wilson@mail.ru) = 6df9cb33ac41429237216d5edead97ac

Временный файл в котором записаны данные будет иметь вид :

6df9cb33ac41429237216d5edead97ac.txt

Ссылка, которая будет создана может иметь примерный вид:

https://dwweb.ru/путь_до_файла_обработчика/action.php?is_email=6df9cb33ac41429237216d5edead97ac Надеюсь, что с пониманием выше написанного пока не возникло проблем!
Если же не все понятно с ссылкой, то совсем кратко - action.php – отдельный файл, который и будет сравнивать название файла и преданные в переменной is_email- данные - 6df9cb33ac41429237216d5edead97ac

Обработка данных, сравнение, подтверждении емайла

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

Отступление!
Давайте сделаем отступление! Чтобы в этом во всем разобраться – нужно иметь рабочий скрипт, который проиллюстрирует, как подтверждение емайла должно работать!

Поэтому!

Мы возьмем простую форму регистрации из примера + будем записывать все данные в файл – all_users.dat – в общем исходя из этих строчек и будем делать наш скрипт подтверждения регистрации, если брать базу данных, то там будет немного сложнее, чем с файлами… А уже, когда к вам придет понимание, как должна работать регистрация и подтвержденее регистрации, то думаю тогда - вам я уже не буду нужен! Подтверждения регистрации php В общем – вам останется взять архив, распаковать в папку, открыть форму и попробовать зарегистрироваться, и там же будет файл action.php и + форма для отправки сообщений.

4.action.php - Сделаем в отдельном файле, когда у вас будет знаний достаточно, можно не делать отдельный файл, но пока мы не будем так далеко углубляться!
4.a Естественно, что нам потребуется проверка на совпадение в файле нашего емайла (это вынесем в файл registration.php - строка 5)
4.b При регистрации мы должны были записать каким-то образом наши данные – и мы записывали их в строчку используя разделитель в виде двух двоеточий! И у нас, например, должна была получиться строка типа:
Ed Wilson::ed.wilson@mail.ru::пароль Далее нам нужно получить эти данные из временного файла с помощью функции file_get_contents

Например:

$time_file = (trim(strip_tags($_GET["is_email"]))).".txt"; $data = @file_get_contents($time_file); 5.И последнее! Если подтверждение емайла и регистрации прошло удачно, нам нужно удалить временный файл.

+ И создадим какую-то сессию, что вот, человек сразу подтвердил регистрацию и сразу зашел на него...

Поскольку в начале думал сделать совсем простой вариант на одной странице, но к сожалению, такой вариант никак не возможен! Поэтому максимально просто получилось 5 файлов.

Как пользоваться архивом с формой регистрации и подтверждения емайла! Вам нужно данную папку бросить себе на сайт и потренироваться будет ли работать!

Внимание!

В файле config.php нужно заполнить две первые две строчки – иначе ваш скрипт не будет работать! У меня данный скрипт, естественно был опробован и работает, как обычно на 100%! Если происходят какие-то сбои, скорее всего это проблема в вашем хостинге, но в любом случае, если не работает, то вы можете написать в коментах, что именно не работает в скрипте!

И!

Раньше здесь были слова с призывом зарегистрироваться... но тепреь регистрация отключена.. это всего лишь пример работы регистрации

Посмотреть пример и скачать можно по ниже идущей ссылке

Скрипт № 2.4
Название скрипта и номер :Простое подтверждение регистрации

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

Все статьи авторские, при копироавании активная ссылка обязательна DwWeb.ru! © 2015 - 2019