Jump to content
  • 0

регистрационное подтверждение по почте


Alex_Mak
 Share

Question

ребят, подскажите, как грамотно сделать такую штуку:

при регистрации юзеру должно придти письмо с просьбой подтверждения регистрации.

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

т.е. нужно, чтобы без подтверждения аккаунт не создавался.

Link to comment
Share on other sites

13 answers to this question

Recommended Posts

  • 0

делаете 2 вида учетных записей в бд(н-р, в 2х таблицах): активированные и те, которые должны быть активированы. При регистрации запись добавляется в таблицу с неактивированными записями; генерируем случайную строку, генератор я выкладывал; записываем эту строку в бд; юзеру высылается ссылка на email, к ней добавляется параметр со случайной строкой, н-р activ.php?u=7bc4dsak; По этой ссылке попадаем на скрипт активации аккаунтов, он проверяет, верна ли эта строка(проверяем по бд) Если верна копируем запись в активированные в бд и удаляем из неактивированных.

Link to comment
Share on other sites

  • 0
юзеру высылается ссылка на email, к ней добавляется параметр со случайной строкой, н-р activ.php?u=7bc4dsak; По этой ссылке попадаем на скрипт активации аккаунтов

т.к. я новичок, я с параметрами не работала еще.

поэтому не совсем поняла, как это работает:

юзер переходит по ссылке [ссылка][параметр].

а скрипт располагается по ссылке [ссылка].

можно в 2х словах объяснить мне механизм?

или расскажите, где почитать, или хотя б, как у гула правильно спросить. ;)

Link to comment
Share on other sites

  • 0
я дал вполне приличный вариант, можно его в md5 засунул

по функции вопросов нет ;)

я не понимаю, как осуществляется переход по ссылке с параметром, когда скрипт располагается по ссылке без параметра

Link to comment
Share on other sites

  • 0

Мой вариант таков: При регистрации в таблицу заносятся данные, и поле conf задается генерированное число, а если поле conf не равно yes, то войти пользователю нельзя. А при регистрации, на емаил зарегистрированного посылаться письмо, типа:

Перейдите по ссылке для подтверждения вашего аккаунта:

http://site/confirm.php?conf=$gen

Потом пишется скрипт:

<?
if($_GET['conf']) {
$query = "UPDATE users2 SET auth = 'yes' WHERE conf= '$_GET[conf]' ";
$result = mysql_query($query);
if($result != '') {
print "Ваш аккаунт подтверждён!";
}
}
?>

Link to comment
Share on other sites

  • 0

n1.php и n1.php?x=kdsafjsa321jfdd4c7db8 -- будет выполняться один и тот же скрипт, во 2ом случае будет переменная $_GET['x'] равная генерированной строке. Эта переменная проверяется на совпадение в базе данных, если ее нет или она неверная не будет совпадений а без них не будет запускаться функция активации учетной записи.

Link to comment
Share on other sites

  • 0
делаете 2 вида учетных записей в бд

а можно ли по другому?

добавляете в таблицу с юзерами поле типа "activated" по умолч. = 0

при регистрации высылаете юзеру на мыло письмо с линком http://lalalal.com?u=<id юзера, обратимо зашифрованный>

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy