ВходИмяПароль
Автоматически входить при каждом посещении    
Регистрация
Регистрация
Войти и проверить личные сообщения
Войти и проверить личные сообщения
Список форумов ЛанМедиаСервис » Предложение функционала

Начать новую тему   Ответить на тему
Восстановление пароля
Предыдущая тема :: Следующая тема  
Автор Сообщение

Pavel 





Зарегистрирован: 29.02.2008
Сообщения: 110


russia.gif
Сообщение Добавлено: 2009-03-01 14:48 pm    Заголовок сообщения: Восстановление пароля Ответить с цитатой

Собственно, не помню - поднимался ли этот вопрос.
Не все используют в качестве авторизации форумы, либо другие движки с функцией восстановления забытого пароля.
В LMS же её нету. Дабы не плодить мильёны аккаунтов одних и тех же людей - стоит запрет регистрации более одного акка с ip.
Но частенько приходят письма с запросом на восстановление пароля и приходится руками отвечать на них, что не есть гуд (при этом пользовательская база всего-ничего ~3000, а если у кого-то в разы больше...).
В общем, если кого-нибудь (участников форума или разработчиков) не затруднит реализовать скриптик высылки (или смены) забытого пароля - буду очень благодарен. Rolling Eyes
Вернуться к началу
Посмотреть профиль Отправить личное сообщение

Frogile





Зарегистрирован: 17.04.2008
Сообщения: 36
Откуда: Минск

blank.gif
Сообщение Добавлено: 2009-03-01 18:19 pm    Заголовок сообщения: Ответить с цитатой

Черновой код
Код:

<?
if ($_POST['submit1']) {
      function generate_password($number)
     {
       $arr = array('A','B','C','D','E','F',
                    'G','H','I','J','K','L',
                    'M','N','O','P','R','S',
                    'T','U','V','X','Y','Z',
                    '1','2','3','4','5','6',
                    '7','8','9','0');
       $pass = "";
       for($i = 0; $i < $number; $i++)
       {
         $index = rand(0, count($arr) - 1);
         $pass .= $arr[$index];
       }
       return $pass;
     } 
   $pass = generate_password(8);

   if(eregi("^[a-zA-Z0-9\._-]+@[a-z0-9\._-]+\.[a-z]{2,4}\$",$email))
   {
            
           
         $r=mysql_query("SELECT ID FROM users WHERE Email='$email'");
         $total=mysql_numrows($r);
         $idp=mysql_result($r,0,0);
            if ($total=="0") { print "<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td width='7%'><div style='width:40px;'>&nbsp;</div></td><td><h2>Напоминаниe пароля</h2><br><br>Пользоваель с таким email (".$email.") не найден.<br><br><br><br><br/></td><td width='7%'><div style='width:40px;'>&nbsp;</div></td></tr></table>";}
            else {
               $sql = mysql_query("UPDATE users SET Password='".md5($pass)."' WHERE ID='$idp'");
          mail("$email", "$gnname - напоминаниe пароля", " Ваш новый пароль для сервиса $gndir: $pass");
                  echo"<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td width='7%'><div style='width:40px;'>&nbsp;</div></td><td><h2>Напоминаниe пароля</h2><br><br>Ваш новый пароль для сервиса $gndir отправлен на $email<br><br><br><br><br/></td><td width='7%'><div style='width:40px;'>&nbsp;</div></td></tr></table>";
            }
   } else {
   echo"<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td width='7%'><div style='width:40px;'>&nbsp;</div></td><td><h2>Напоминаниe пароля</h2><br><br>E-mail неправильно введен или содержит недопустимые символы. Пожалуйста вернитесь и заполните все поля правильно.<br><br><br><br><br/></td><td width='7%'><div style='width:40px;'>&nbsp;</div></td></tr></table>";
   }
}
else {
?>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
      <tr>
         <td width="7%"><div style="width:40px;">&nbsp;</div></td>
         <td><form action="/" method="post" id="remind" name="remind"><h2>Напоминаниe пароля</h2>
            <SCRIPT language="JavaScript">
function submitform()
{
  document.remind.submit();
}
</SCRIPT>
<input name="submit1" id="submit1" style="width: 360px;" type="hidden" value=1>
       <p>Если вы забыли свой пароль, мы можем выслать вам его на Ваш e-mail, который вы указали
                при регистрации.</p>
                <table>
                <tr>
                <td width="99%"><input name="email" type="text" id="ctl00_cph_emailTextBox" style="width:100%;" /></td>
                <td width="1%">
         <a href='javascript: submitform()' class="btn_search"><b><b><b style="width: 125px"><nobr>Напомнить пароль</nobr></b></b></b></a></td>
         
                </tr>
                </table>
    <p>В случае проблем с системой напоминания пароля, обратитесь в нашу <a href="support/">службу поддержки</a>.</p>
      </form><br/></td>
         <td width="7%"><div style="width:40px;">&nbsp;</div></td>
      </tr>
   </table>
<?
}
?>

_________________
Доработки к LMS платно/бесплатно. Скины. Стучать 175774456.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора ICQ Number

dgn@ixbt.com





Зарегистрирован: 05.05.2008
Сообщения: 63


blank.gif
Сообщение Добавлено: 2009-03-16 07:23 am    Заголовок сообщения: Ответить с цитатой

Я лично вообще убрал возможность менять пароль для юзеров... Пусть через форум меняют-регистрятся... Там и капча и уведомления и проверка емайлов...
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов ЛанМедиаСервис » Предложение функционала Часовой пояс: GMT
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете вкладывать файлы
Вы не можете скачивать файлы