Отвечаю на тему: http://forum.wowcircle.com/showthread.php?t=150418
Отписал, так как Сфера написала:
Для себя писал, принимайте!Администрация в курсе и пока путей решения этого вопроса не найдено.
Код:<?php //Можно добавить проверку на то, что аккаунт не принадлежит администратору или ГМу //Коннект к базе аккаунтов if(isset($_POST['repass'])) { $login = htmlspecialchars(mysql_real_escape_string($_POST['login'])); $oldpass = htmlspecialchars(mysql_real_escape_string($_POST['oldpass'])); $oldpass = SHA1(strtoupper($login.':'.$oldpass)); $oldpass = trim($oldpass); $query = mysql_query("SELECT * FROM `account` WHERE `username`='".$login."' AND `sha_pass_hash`='".$oldpass."'"); $num = mysql_num_rows($query); if($num == 0) { echo 'Такой связки Логин - Пароль в базе не найдено.'; } else { $psswd = htmlspecialchars(mysql_real_escape_string($_POST['pass'])); $pass = SHA1(strtoupper($login.':'.$psswd)); $pass = trim($pass); $querys = mysql_query("UPDATE `account` SET `sha_pass_hash`='".$pass."', `sessionkey`='', `v`='', `s`='' WHERE `username`='".$login."'"); if(!$querys) { echo 'Произошла ошибка'; } else { echo "Смена пароля произведена!"; } } } ?> <font size=3>Восстановить пароль</font> <form action="" method="post"> <table border=0> <tr> <td>Имя аккаунта:</td> <td><input type="text" name="login" value="" size="30" /></td> </tr> <tr> <td>Старый пароль:</td> <td><input type="text" name="oldpass" value="" size="30" /></td> </tr> <tr> <tr> <td>Новый пароль:</td> <td><input type="text" name="pass" value="" size="30" /></td> </tr> <tr> <input type="hidden" name="repass" value="true"> <td colspan="2"><input type="submit" value="Изменить пароль" /></td> </tr> </table> </form>




Ответить с цитированием
