Проблема с авторизацией

  • Автор темы Demmiurg123
  • Дата начала

Demmiurg123

Guest
Проблема с авторизацией

Есть страница с примерно таким кодом:
PHP:
<?php
function auth()  {    
header("WWW-Authenticate: Basic realm=\"Authenticate\""); 
header("HTTP/1.0 401 Unauthorized");  
}
?>
<html>
тэги-тэги

PHP:
<?php
if(!isset($_SERVER["PHP_AUTH_USER"]) || !isset($_SERVER["PHP_AUTH_PW"])){
     auth();
     echo "Не введён логин или пароль.!";
     echo "<form><INPUT TYPE=\"submit\" VALUE=\"Войти\" onSubmit=\"parent.location='index.php'\";><form>";
   }else{
     $result = mysql_query("SELECT * FROM access WHERE login='". preg_replace("/[^\\w_-]/","",$_SERVER["PHP_AUTH_USER"]). "' AND password='". md5(preg_replace("/[^\\w_-]/","",$_SERVER["PHP_AUTH_PW"])). "'");
     if (@mysql_num_rows($result)!=1){
      auth();      
      echo "В доступе отказано!";
      echo "<form><INPUT TYPE=\"submit\" VALUE=\"Войти\" onSubmit=\"parent.location='index.php'\";><form>";
     }else{ require("main.php");}
   }
?>
тэги-тэги
</html>


Скрипт работает, но когда вводишь неверный пароль или логин
нужно при нажатии на submit опять выводить окно для ввода логина и пароля. Как это можно сделать? А то через функцию не работает. :(
 

SelenIT

IT-лунатик :)
Зачем тут вообще форма, чем обычная ссылка не подходит? А если уж на форме свет клином сошелся - у нее есть атрибут action...
 

Demmiurg123

Guest
Ну предположим, пусть будет ссылка и что? Это проблему не решает, как мне кажется... Что я должен буду прописать в этот скрипт для action?
 

Фанат

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

Demmiurg123

Guest
В том то и дело что не предлагает. Окно появляется только 1 раз при загрузке страницы. =(
 

Фанат

oncle terrible
Команда форума
значит, вместо этого кривого кода возьми пример из мана
 
Сверху