Скрипт на восстановление пароля. - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > Полезное / Common > Программирование / Programming > PHP

PHP Форум как для начинающих программистов на PHP так и для профессионалов этого дела. Если нужно создать скрипт, функцию и т.д, но не знаете как, спросите у нас и мы вам подскажем. Здесь вы найдете примеры скриптов которые вы сможете использовать на сайтах своих серверов (онлайн, регистрация, семь печатей, топ игроков). Так же много книг и статей.

Ответ
Опции темы
Непрочитано 20.01.2011, 02:02   #1
Пользователь

Автор темы (Топик Стартер) Скрипт на восстановление пароля.

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

PHP код:
<?php
ob_start
();
$page_h1 $lang_101;
$page_title $lang_150;
$page_descr $lang_150;
$page_keyws $lang_150;
include(
"module/reg-menu.php");
if (
$Server = @mysql_connect("$host:$port""$user""$pass"True)){
    @
mysql_query("set names cp1251");
if (@
mysql_selectdb("$db1"$Server)){
?>
<div class="t_head114"></div><br>
<br><br>
 <script type="text/javascript">//<![CDATA[
function checkform1(f)
{
  if (f.account.value=="")
  {
    alert("<?php echo $lang_104;?>");
    return false;
  }
  if (!f.account.value.match(/^[a-zA-Z0-9_]+$/))
  {
    alert("<?php echo $lang_128;?>");
    return false;
  }
  if (f.email.value=="")
  {
    alert("<?php echo $lang_113;?>");
    return false;
  }
  if (!f.email.value.match(/^([a-zA-Z0-9])+([.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-]+)+/))
  {
    alert("<?php echo $lang_114;?>");
    return false;
  }
return true;
}
function checkform2(f)
{
  if (f.answer1.value=="")
  {
    alert("<?php echo $lang_151;?>");
    return false;
  }
 return true;
}
//]]></script>
</head>

<body>

<?php
if ($page="index.php" && @$_POST['account'] && strlen($_POST['account'])<=20 && $_POST['email'] && strlen($_POST['email'])<=20)
{

if(
count($_POST)>0){
if(isset(
$_SESSION['captcha_keystring']) && $_SESSION['captcha_keystring'] == $_POST['keystring']){


  if (!
eregi("^[a-zA-Z0-9_]+$"$_POST['account']))
    die (
"<p>".$lang_152." ".$lang_128."</p>");
  if (!
eregi("^([a-zA-Z0-9])+([.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-]+)+"$_POST['email']))
    die (
"<p>".$lang_152." ".$lang_114."</p>");
  
$Login mysql_connect("$host:$port""$user""$pass"True);
  
mysql_selectdb("$db1"$Login);
  
$result=mysql_query("SELECT * FROM accounts WHERE login='".$_POST['account']."' AND email='".$_POST['email']."'"$Login)
    or die (
'Error '.mysql_errno().': '.mysql_error());
  if (
mysql_num_rows($result)==1)
  {
    
$row=mysql_fetch_array($result);

print 
'
<div style="position:relative; left:-60px;">
<form method="post" action="repass2.html" onsubmit="return checkform2(this)">
<table>
 <tr>
  <td> '
.$lang_101.' </td><td>'.$row['login'].'</td>
 </tr><tr>
  <td>E-mail</td><td>'
.$row['email'].'</td>
 </tr><tr>
  <td>'
.$lang_123.' :</td><td><b> '.$row['question1'].'</b></td>
 </tr><tr>
  <td>'
.$lang_124.'</td><td><input type="text" name="answer1" maxlength="40" class="formakk"></td>
 </tr><tr>
  <td colspan="2" style="text-align: center;"><br /><input style="position:relative; left:68px;" type="submit" name="submit" value='
.$lang_153.' class="submit"></td>
 </tr>
</table>
<input type="hidden" name="account" maxlength="20" value="'
.$_POST['account'].'" />
</form>
</div>
'
;
}
 else
 print 
"<p>Неправильные логин или e-mail</p>";
}
else{
echo 
"<div align=\"center\">Неверно введён код с картинки!<br><br><a href=\"repass.html\">Назад</a></div>";
}}}

else
{
print 
'
<div style="position:relative; left:-60px;">
<form method="post" action="repass.html" onsubmit="return checkform1(this)">
<table align="center">
 <tr>
  <td> '
.$lang_101.' </td>
  <td><input type="text" name="account" maxlength="20" class="formakk"></td>
 </tr>
 <tr>
  <td>E-mail</td>
  <td><input type="text" name="email" maxlength="20" class="formakk"></td>
 </tr>
<tr>
<td>'
;
?>
<p><a href="#captcha" onClick="document.getElementById('image').src='engine/kcaptcha/index.php?rand='+Math.round(1000 * Math.random());">
<?php echo $lang_126;?></a></p>
<?php echo $lang_125;?>
</td>
<td>
<img src="engine/kcaptcha/index.php" id="image">
<p><input type='text' name='keystring' class="formakk"></p>
</td></tr>
<?php
print 
 <tr>
  <td colspan="2" style="text-align: center;"><input style="position:relative; cursor:pointer; left:65px; width:180px; height:25px; background:url(/skins/mw_kgf/images/pass001.jpg) no-repeat; border:0;" type="submit" name="submit" value="" class="submit"></td>
 </tr>
</table>
</form>
</div>
'
;
}
?>

</body>
</html>
<?php
}else {echo $no_connect;}
}else {echo 
$no_connect;}
$content ob_get_contents();
ob_end_clean();
?>
Добавлено через 2 часа 54 минуты
Не актуально, проблемму решили.

Последний раз редактировалось niko42; 20.01.2011 в 04:56. Причина: Добавлено сообщение
niko42 вне форума Ответить с цитированием
Сказали спасибо:
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменение пароля пользователя в MySQL Abram Lineage II 7 10.11.2011 16:45
Восстановление базы данных Evil-Soft Lineage II 3 03.12.2010 14:35
Скрипт SkyAngel Lineage II 0 14.06.2010 02:52
ограничение действия пароля в 30 дней Milldi О форуме / About Zone-Game 1 13.11.2008 22:34


© 2007–2020 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 10:34. Часовой пояс GMT +3.

Вверх