Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Подтверждение e-mail
 
 автор: Ванек2010   (02.01.2010 в 13:51)   письмо автору
 
 

Как сделать подтвержедние e-mail, чтобы код высылался на ящик, а от туда его подтверждали?

  Ответить  
 
 автор: t3ma   (02.01.2010 в 13:56)   письмо автору
 
   для: Ванек2010   (02.01.2010 в 13:51)
 

добавляете поле в таблицу с юзерами например uniq
при регистрации записываем md5 емайла и отправляем его юзеру с сылкой вида site..ru/activate.php?uniq= тут хэш мд5
сверям с таблицей и активируем

  Ответить  
 
 автор: andrew123   (02.01.2010 в 14:00)   письмо автору
 
   для: Ванек2010   (02.01.2010 в 13:51)
 

Все введенные даные забиваеш в бд, в таблице должна быть колонка например status, где сразу указываеш NO, php генерирует код, формирует ссылку типа site.com/chech.php?id=[id пользователя]&q=[код подтверждения]. Когда юзер перейдет по ней, скрипт chech.php проверяет статус пользователя если NO, то апдейтит ставит YES, если уже было подтверждение, то выдает сообщение, а если пользователя нет, то посылает.
Это суть задачи, ты можеш дописать че угодно, например лимит времени для подтверждения.

  Ответить  
 
 автор: Ванек2010   (02.01.2010 в 14:41)   письмо автору
 
   для: andrew123   (02.01.2010 в 14:00)
 

Понятно объяснили, спасибо!
Вопрос возник с тем, с помошью какой функции генерруется код, в файле chech.php ?
Я представил все так.
Человек регистрируется на сайте, в бд , в поле status заносится сгенерированый код(какой функцией пока незнаю), сразу формируется ссылка и отправляется на ящик, в этой ссылке тот же сгенерированый код, как и в бд. Если человек проходит по ссылке и значения из бд равны значению переменых полученых из ссылки ящика, то сделать апдейт таблицы и поменять на YES, а иначе оставить все как есть.
Теперь вопрос как поставить лимит, если пользователь не подтверждает ящик, удалить из базы в течении 48 часов?

  Ответить  
 
 автор: t3ma   (02.01.2010 в 15:13)   письмо автору
 
   для: Ванек2010   (02.01.2010 в 14:41)
 

ВЫ еще и не внимательно читаете :) прочтите мой пост еще раз :)

DELETE FROM users WHERE 'date' > NOW() - INTERVAL 2 DAY

  Ответить  
 
 автор: Ванек2010   (02.01.2010 в 15:45)   письмо автору
 
   для: t3ma   (02.01.2010 в 15:13)
 

Я вообще не могу уловить ваших мыслей, очень не понятно объясняете.

  Ответить  
 
 автор: t3ma   (02.01.2010 в 16:58)   письмо автору
 
   для: Ванек2010   (02.01.2010 в 15:45)
 

<?php
$email_user 
"asd@mail.ru";
$mdemail md5($email_user); // полученный md5 хэш записываем в таблицу и отправляем юзеру в виде уникального ключа для перехода
?>

  Ответить  
 
 автор: andrew123   (02.01.2010 в 15:14)   письмо автору
 
   для: Ванек2010   (02.01.2010 в 14:41)
 

Попробуй сам поискать, например для генерации паролей есть статья http://www.softtime.ru/scripts/parol.php. Для установки лимита создай в бд колонку времени, например вбивай туда даные времени с помощью time() + 4 дня по вемени. Когда юзер прошел по ссылке, скрипт проверяет лимит времени, то есть
определяеш время в даный момент $time=time(), если значение времени $time меньше или равно $time_limit, то есть if($time<=$time_limit) значит ok (апдейт таблици), если нет - посылаем.

  Ответить  
 
 автор: Ванек2010   (02.01.2010 в 15:46)   письмо автору
 
   для: andrew123   (02.01.2010 в 15:14)
 

Ок понял, буду сегодня пробывать реализовывать на локале

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования