На емл приходит кодированный пароль.

niko42

Новичок
Здравствуйте.

PHP:
$newpass = substr(md5(time()), 4 , 6); //генерируем некое слово и вырезаем от туда 6 символов
mailto($row['login'], $newpass, $_POST['email']); // отправляем на почту данный пароль
mysql_query("UPDATE `accounts` SET `accounts`.`password`='".base64_encode(pack('H*', sha1(utf8_encode($newpass))))."' WHERE `accounts`.`login`= '".$_POST['email']."'", $Login);// encode - кодируем пароль и записываем в БД
Проблемма в том, что на почту должен приходить пароль из 6 симовлов - но не как не такой:
Новый пароль: PGZ5/AQ0FaJoA3skMW1bPjB0DQA=

P.S. функция почты (правда корява)
PHP:
function mailto($login,$pass, $eml){
    $otkogo= "[email protected]";
    $tema= "Восстановление пароля на test1.ru";
    $lang_132="Поздравляем, Вас, с успешным восстовнолением пароля  на <a href='http://test1.ru'>test1.ru</a>";
    $lang_133="С уважением, администрация сервера <a href='http://test1.ru'>test1.ru</a>";
    $msg1 = "Аккаунт: <strong style='color:green;'>".$login."</strong>";
    $msg3 = "<br>Новый пароль: " .$pass. "<br>E-mail: ".$eml."<br><br>";
    $meseg="$msg1 $msg3";

    $header="From: $otkogo\nReply-To: $otkogo";
    $header.="\nContent-type: text/html; charset=\"utf-8\"";
    $text="<HTML>\r\n";
    $text.="<HEAD>\r\n";
    $text.="<META http-equiv=Content-Type content='text/html; charset=utf-8'>\r\n";
    $text.="</HEAD>\r\n";
    $text.="<BODY>\r\n";
    $text.="<B>$lang_132</B>\r\n";
    $text.="<p>$meseg\r\n";
    $text.="$lang_133 \r\n";
    $text.="</BODY>\r\n";
    $text.="</HTML>";

    mail($eml,$tema,$text,$header);
}
 

Фанат

oncle terrible
Команда форума
не понял. ты высылаешь пароль для восстановления на тот емейл, который укажут в форме?
 

niko42

Новичок
да. но фишка в том, что пароль приходит не в 6 символов, а закодированный в фиг знает что - это даже не md5.
А кодирвал я пароль уже после отправки на почту.
 

Фанат

oncle terrible
Команда форума
офигеть.
то есть, если я захочу получить твой пароль, то просто укажу свой емейл?
 

Фанат

oncle terrible
Команда форума
а где пароль-то портится? до отправки или после?
 

niko42

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

Фанат

oncle terrible
Команда форума
все равно какая-то жесть. почему бы не взять из базы - непонятно.
 

niko42

Новичок
я хочу отправить пользователю на почту не зашифрованный пароль - а нормальный, человекопонятный из 6 символов. А он отсылает закодированный пароль и вообще не понятно в какой шифровке. А шифрую я пароль уже после отправки емл.

Как такое может быть - что пароль приходит зашифрованным на емл, если я его еще не шифровал!
 

niko42

Новичок
Короч лесом дебильный php
Вообщем регулярку пришлось пихнуть.
PHP:
$newpass = preg_replace("/[a-zA-Z0-9]/", "", md5(time()));
 

niko42

Новичок
хо-хо
Это РНР дебильный, конечно, да :)
Генерируем новый пароль
PHP:
$newpass = substr(md5(time()), 4 , 6); //генерируем некое слово и вырезаем от туда 6 символов
Отправляем на емл 6 симолов
PHP:
mailto($row['login'], $newpass, $_POST['email']); // отправляем на почту данный пароль
На емл приходит:
PHP:
Новый пароль: xsoXYUd7m1Siq8UQQxgelZlRBB8=
Не дебелизм?
 

Фанат

oncle terrible
Команда форума
Дебилизм.
Вот только РНР ли здесь виноват - вопрос...
 
Сверху