Проверьте электронную почту и обновите колонку БД MySQL

Нужна помощь в создании verify.php / verify.php для моего сайта после регистрации. Электронная почта уже отправляется на электронную почту пользователя со ссылкой для подтверждения. Мне нужна ссылка, чтобы работать так:

При щелчке по ссылке пользователь будет перенаправлен на наш сайт и отобразит простое сообщение и обновит определенный столбец в нашей базе данных, в котором будет указано, что пользователь ПОДТВЕРЖДЕН как НЕПРАВИЛЬНЫЙ пользователь.

Заранее спасибо!

-5

Решение

Я бы пошел об этом так:

  1. Иметь таблицу пользователей со следующими столбцами: имя пользователя (varchar), vrified (bool) и токен (varchar).
  2. Когда пользователь регистрирует проверенный столбец, он будет равен 0 (НЕПРАВИЛЬНО), генерирует случайный токен и вставляет его со всей другой запрашиваемой вами информацией. Я не буду рассказывать о том, как это сделать, так как в Интернете есть множество уроков о том, как генерировать случайный токен.
  3. После того, как вы закончите вставку нового пользователя в БД, вам нужно будет отправить электронное письмо со ссылкой для подтверждения, эта ссылка может содержать адрес электронной почты и токен пользователя. Пример: www.mysite.com/verify.php?email=USERS_EMAIL&token=GENERATED_TOKEN,
  4. После того, как письмо было отправлено, verify.php вам нужно будет проверить, существует ли пользователь в БД, и обновить его.

Примеры запросов:

<?php
$checkUserExists = "SELECT COUNT(username) FROM users WHERE email = USERS_EMAIL"; //This should return a 1 if the user exists.

$updateUser = "UPDATE users SET verified = 1 WHERE email = USERS_EMAIL AND token = GENERATED_TOKEN"; //Update the user if he exists.
?>
  1. Если пользователь не существует или токен не верен, вы можете отправить сообщение об ошибке. Еще покажите, что пользователь обновился правильно.

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

0

Другие решения

Других решений пока нет …