генерация одноразовых ссылок
Здарвствуйте! Скажите пожалуста, как генерировать одноразовые ссылки? Необходимо отправить на почту две одноразовые ссылки для подтверждение заявки. Если пользователь переходит по одной ссылке, значит принял заявку, если по друго значит не принял.
Здравствуйте, генерировать ссылки можно через md5(), берете исходные данные: дату, имя пользователя, соль, получаете хеш, из хеша берете кусок и используете его в ссылке вида :
http://site.com/link_page?link=safaf21214jkljsadfda1
Обе ссылки вам нужно хранить в созданной вами таблице со столбцами uid, link1,link2, datestamp. Дату стоит хранить, чтобы удалять старые ссылки по крону.
Дальше пишите модуль в котором создаете action друпала, посылающий емайл пользователю и записывающий адреса ссылок. Action можно через модуль Rules привязать к какому-то событию.
Дальше когда уже action записал ссылки в БД, на странице:
http://site.com/link_page
Страницу можно создать через hook_menu(), проверяете аргумент в get-запросе, если такой аргумент есть в БД в нужной нам таблице, то строчку удаляем и делаем действие если link1 один то одно, если link2 то другое. Ну вот наверно и весь алгоритм, вам осталось только модуль написать.
Лучше использовать вместо md5(), функцию uniqid().