<?php session_start(); $url = getenv("HTTP_REFERER"); $err = "<center><font color=#ff0000><p>Ошибка авторизации!<br> Неверный логин или пароль</font></center></p>"; function showForm() { echo "<p align='center'>Только для зарегистрированных пользователей!</p> <p align='center'>Вам нужно авторизоваться или <a href='self.php'>зарегистрироваться</a>, это не займёт у Вас много времени.</p> <center> <form action='{$_SERVER['PHP_SELF']}' method='post'> <table border='0'> <tr> <td>Логин</td> <td><input type='text' size='20' name='login' /></td> </tr> <tr> <td>Пароль</td> <td><input type='password' size='20' name='pass' /></td> </tr> </table> <input type='submit' name='submit' value='Авторизоваться'> </form> </td> </tr> </table> </div> </td> </tr> </table> </center>"; } function compare_log($log,$pass,$aut_log,$aut_pass) { $val = false; if(($log === $aut_log) && (md5($pass) === $aut_pass)) $val = true; return $val; } if(isset($_POST['submit'])) { if((!eregi("^[_.0-9a-z-]{2,15}$", $_POST['login'])) or (!eregi("^[_.0-9a-z-]{6,15}$", $_POST['pass']))) { echo $err; showForm(); exit; } else{ include "config.php"; $query = "(SELECT * FROM regy)"; $result = mysql_query($query); while($aut = mysql_fetch_array($result)) if(compare_log($_POST['login'],$_POST['pass'],$aut['login'],$aut['pass'])) { $_SESSION["auth_username"] = $aut['pass']; header("Location: $url"); exit; } if(!compare_log($_POST['login'],$_POST['pass'],$aut['login'],$aut['pass'])) { echo $err; showForm(); exit; } } } if (!isset($_SESSION["auth_username"])) { showForm(); exit; } ?>