Не шифровать егоblackyar24 написал(а):Ошибки нет, проблема в том что при восстановлении пароля он приходит на почту в зашифрованном виде - следовательно я не могу зайти в аккаунт. Вопрос как сделать чтобы он приходил в обычном виде?
Агоритм: генерируем пароль новый, шлем на почту, хеш пароля пишем в базу. Все!
покажите как это сделать?какие файлы править?APTEMOH написал(а):Не шифровать его
Агоритм: генерируем пароль новый, шлем на почту, хеш пароля пишем в базу. Все!
Ares
Участник
- Сообщения
- 37
- Реакции
- 6
c 1 страницы не пробовали читать?? там все розжовано ужеblackyar24 написал(а):покажите как это сделать?какие файлы править?
а вы прочитали мой вопрос? мне непонятно как сделать восстановление пароля в обычном виде а не в зашифрованомAres написал(а):c 1 страницы не пробовали читать?? там все розжовано уже
Ares
Участник
- Сообщения
- 37
- Реакции
- 6
прочитал ))) извеняюсьblackyar24 написал(а):а вы прочитали мой вопрос? мне непонятно как сделать восстановление пароля в обычном виде а не в зашифрованом
Kojo
Участник
- Сообщения
- 286
- Реакции
- 53
стандартный файл...не??...blackyar24 написал(а):а вы прочитали мой вопрос? мне непонятно как сделать восстановление пароля в обычном виде а не в зашифрованом
да хз, могу скинуть если есть желание посмотретьKojo написал(а):стандартный файл...не??...
N3CRO
Участник
- Сообщения
- 285
- Реакции
- 44
_recovery.phpblackyar24 написал(а):Автор темы прикрепите свои файлы пожалуйста
Для просмотра скрытого содержимого необходимо Войти или Зарегистрироваться.
Генерирует пароль - отсылает на почту.
Хеш пароля пишет в базу.
polipi
Местный
- Сообщения
- 30
- Реакции
- 1
ты забыл наверно, что в бд pass длина\значение нужно поставить 32, иначе работать не будет.APTEMOH написал(а):Всем добра!
Похожую тему встречал на форуме, но у меня небольшое отличие. Так же, править будем все ручками, т.к. у многих отличаются файлы. У меня например при заказе выплаты так:
Итак, начнем. Нам нужны будут следующий файлы:
- classes -> _class.isender.php
- inc -> _login.php
- pages -> account -> _config.php
- pages -> _recovery.php
- pages -> _signup.php
Перед началом проверьте наличие функции в файле classes -> _class.func.php (248-я строка)
Если есть, отлично, нет - добавляем! Функция просто супер, мало того, что она просто делает пароли в MD5, так оно еще добавляет ключ shark_md5. Т.е. shark_md5 можно менять на свое слово и перекодировка ничего не даст злоумышленнику.Код:public function md5Password($pass){ $pass = strtolower($pass); return md5("shark_md5"."-".$pass); }
1. В файле _class.isender.php в функцию RecoveryPassword, по желанию, добавить следующее:
2. В файле _login.php :Код:$text.= "ВНИМАНИЕ - это временный пароль - Не забудте его сменить в меню настройки: <BR />";
После:Добавить ниже:Код:$log_data = $db->FetchArray(); (12-я строка)
Найти:Код:$post_pass = $func->md5Password($_POST["pass"]);
Заменить на:Код:if(strtolower($log_data["pass"]) == strtolower($_POST["pass"])){ (16-я строка)
3. В файле _config.php :Код:if(strtolower($log_data["pass"]) == strtolower($post_pass)){
Найти:
Заменить на:Код:$old = $func->IsPassword($_POST["old"]); (19-я строка) $new = $func->IsPassword($_POST["new"]); (20-я строка)
Ниже дописать:Код:$old_pass = $func->IsPassword($_POST["old"]); $new_pass = $func->IsPassword($_POST["new"]);
Найти:Код:$old = $func->md5Password($old_pass); $new = $func->md5Password($new_pass);
Заменить на:Код:if( strtolower($new) == strtolower($_POST["re_new"])) { (29-я строка)
В этом же файле поправить платежный пароль:Код:if( strtolower($new_pass) == strtolower($_POST["re_new"])){
А в _payments.php изменить:Код:$plat_pass = $func->md5Password($plat_passs);
4. В файле _recovery.php :Код:$plat_pass = $func->md5Password($plat_passs);
Найти:Заменить на:Код:$newmdPassword = md5($password); (44-я строка)
5. В файле _signup.php :Код:$newmdPassword = $func->md5Password($password);
Найти:Изменить на:Код:$pass = $func->IsPassword($_POST["pass"]); (141-я строка)
Ниже дописать:Код:$pass1 = $func->IsPassword($_POST["pass"]);
Код:$pass = $func->md5Password($pass1);
Найти:Код:$repass = $func->md5Password($_POST["repass"]);
Изменить на:Код:if($pass == $_POST["repass"]){ (156-я строка)
Сохраняем все и заливаем на сервер! Наслаждаемся безопасной работой!Код:if($pass == $repass){
Кому нужно скину файлы.
P.S. От спасибок не откажусь!
Точно! Спасибо! Хеш то длинныйpolipi написал(а):ты забыл наверно, что в бд pass длина\значение нужно поставить 32, иначе работать не будет.
polipi
Местный
- Сообщения
- 30
- Реакции
- 1
Илья_Smolenskiy
Местный
- Сообщения
- 40
- Реакции
- 0
polipi
Местный
- Сообщения
- 30
- Реакции
- 1
VHF85
Участник
- Сообщения
- 9
- Реакции
- 0
polipi
Местный
- Сообщения
- 30
- Реакции
- 1
На странице восстановления пароля так же нужно из пароля сделать хеш и записать его в базу.VHF85 написал(а):такой вопросик , все работает кроме смены пароля , пишет Старый пароль заполнен неверно, хотя все водиться верно.
VHF85
Участник
- Сообщения
- 9
- Реакции
- 0
если я знал как то не задавал бы такого вопросаAPTEMOH написал(а):На странице восстановления пароля так же нужно из пароля сделать хеш и записать его в базу.