Как да създадете повторно задаване на парола връзка стека преливане на Руски на
Принципът на работа е както следва:
- Потребителят въвежда имейла
- получава писмо
- Минете чрез позоваване
- Въвежда нова парола
Но аз не знам как да се защитят връзка, което се изпраща по електронна поща, както и че по принцип може и трябва да го давате !!
Моля, кажете ми как да се приложи това?
Докато мисълта за такава опция:
Вземете електронна поща, да проверя дали има тя е в базата данни. След това, за вход, парола, имейл вземе в един ред се кодира в md5 ().
Аз изпратим имейл с линк: www.sayt.ru getPass = $ ул
На следващо място, както аз го разбирам, че трябва да се създаде база данни за по-късно $ на ул, защото когато го получа? GetPass = $ ул. Аз трябва да го сравня.
Е, в таблицата, съответно, да се уточни датата, за да се отстрани, като на ден, ако потребителят не е преминал в справката.
Е, аз ще го направят, но бих искал да се по-опитни програмисти, предложени как най-добре
Да, прав си, на ул $ може да се генерира на случаен принцип, аз обикновено направете следното: кодирана низ в md5 ()? създаде база данни, в която се поставя на стойността, и когато потребителят преминава през кодирана връзка, аз го сверени с базата данни и ако има съвпадение, оставащата форма за попълване на нова парола.
Бих се създаде отделна чиния или допълнителни записи.
Например Pass_recovery плоча с полета USER_ID, access_hash, изтече.
user_id - ID juzverej (външен ключ)
access_hash - произволна md5 () или sha1 () хеш достъп, такива, дори md5 (време ())
изтича - например 1 час от момента на искането за възстановяване на паролата
След това въведете в имейла, за да изпратите линк:
Сценарий за recovery_id ние бързо да разберете Pass_recovery маса стойност и проверки recovery_id == user_id и recovery_hash == access_hash.
Бързо, тъй като тя е трябвало да бъде индекс на масата! Ако тестът е успешен офертата juzverej въведете паролата директно на сайта. След това се пречиства accessHash маса.
Отговорено 19 '12 септември в 19:18