Programming Program Ответов: 3

Как сделать функцию забытого пароля


Как я могу сделать функцию забытого пароля на своем сайте в социальных сетях?

Что я уже пробовал:

Я пытался выяснить, как сделать функцию забытого пароля, но ничего не нашел. И я не знаю, как установить это в моем коде, если я это узнаю.

3 Ответов

Рейтинг:
27

OriginalGriff

Надеюсь, вы храните пароли не в обычном тексте (очень, очень плохо) и не в зашифрованном виде (все еще очень, очень плохо), а в хэше - и в этом случае, как только пользователь забудет пароль, никто не знает, что это такое и как его "восстановить".
Вместо этого, когда они нажимают "забыли мой пароль", вы отправляете ссылку на зарегистрированный адрес электронной почты, который содержит GUID или аналогичный, чтобы определить, какая ссылка была нажата. Затем вы просматриваете этот GUID в таблице "забытый пароль", которая содержит дату и время истечения срока действия, а также ссылку на исходную учетную запись. Если все в порядке, вы сбрасываете пароль на случайное значение, сообщаете им новый пароль, удаляете строку из таблицы "забытый пароль" и ведете их на страницу "изменить пароль", чтобы они могли ввести новый.

Звучит сложно? на самом деле это не так. Но это должно быть сделано таким образом, чтобы я не "украл" ваш счет!


Рейтинг:
0

W∴ Balboos, GHB

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

Я не думаю, что это решает ваши проблемы, как вы добавили "

Цитата:
И я не знаю, как установить это в моем коде, если я это узнаю.
это наводит меня на подозрение, что вы вообще не имеете ни малейшего представления о том, как использовать php. Я настоятельно рекомендую вам зайти на этот сайт и узнать больше: Учебник по PHP 5[^]

Это как если бы вы спросили: "что мне нужно, чтобы приготовить суп", а затем задали вопрос: "как я готовлю?"


Рейтинг:
0

muhammad sufiyan

если пароли сохраняются в базе данных mysql, то при каждом входе в систему будет присутствовать кнопка забыть пароль или сбросить пароль. на бэкэнде функция для этой кнопки будет иметь проверку учетной записи по базе данных, и если учетная запись существует, текст в текстовом поле новый пароль заменит старый пароль в базе данных


Richard MacCutchan

И как это подтвердит, что человек, устанавливающий новый пароль, является реальным пользователем?

muhammad sufiyan

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

CHill60

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