Jump to content

Авторизация пользователей скрипта через HTML форму.


Fawlty
 Share

Recommended Posts

Есть скрипт, при попытке открыть его в браузере появляется окно с просьбой ввести логин и пароль, верно указав логин и пароль скрипт загружается, если не верно указать или вообще не заполнить данные поля получаю сообщение "Script: Access Denied - password erroneous"

Мне нужно в свою страницу вставить HTML форму для входа в скрипт. Как это сделать я так и не понял.

В скрипте есть файл config.php в котром хранится логин и пароль для входа вот в таком виде:

<? $authorization['login']='password';?>

Где логин это имя пользователя а password это пароль :)

В самом скрипте (index.php) я нашёл вот такие строчки связаные с авторизацией:

{	if (!isset($_SERVER['PHP_AUTH_USER']) || !isset($authorization[$_SERVER['PHP_AUTH_USER']]) || ($authorization[$_SERVER['PHP_AUTH_USER']] !== $_SERVER['PHP_AUTH_PW']))		{			header("WWW-Authenticate: Basic realm=\"Script\"");			header("HTTP/1.0 401 Unauthorized");			die("<h1><a href=http://www.php.net>Script</a>: Access Denied - password erroneous</h1>\n");		}}

Можно ли каким-нибудь образом реализовать авторизацию через HTML форму ?

Link to comment
Share on other sites

Fawlty: В твоём скрипте используется так называемая http-авторизация

то есть выводится не html форма, а стандартное окно браузера.

Как вариант могу предложить отредактировать чуток код твоего index.php

примерно так:

	{if(isset($_POST['login']) && isset($_POST['password'])) {$_SERVER['PHP_AUTH_USER'] = $_POST['login'];$_SERVER['PHP_AUTH_PW'] = $_POST['password'];}		if (!isset($_SERVER['PHP_AUTH_USER']) || !isset($authorization[$_SERVER['PHP_AUTH_USER']]) || ($authorization[$_SERVER['PHP_AUTH_USER']] !== $_SERVER['PHP_AUTH_PW']))		{			header("WWW-Authenticate: Basic realm=\"Script\"");			header("HTTP/1.0 401 Unauthorized");			die("<h1><a href=http://www.php.net>Script</a>: Access Denied - password erroneous</h1>\n");		}}

теперь вставь там где тебе надо примерно следующую форму:

<form method="post" actions="index.php"><input type="text" size="15" name="login" /><input type="password" size="15" name="password" /><input type="submit" value="LOGIN" /></form>

Удачи!

Link to comment
Share on other sites

  • 2 weeks later...

И снова проблема с авторизацией :sm(123):

Отредактировал код так как вы описали выше, авторизация проходит успешно, но затем при выполнении каких-либо действий в скрипте вновь открывается окно браузера с формой авторизации и если туда вписать свой логин и пароль то скрипт продолжает работать если же не вписать то получаю "Script: Access Denied - password erroneous"

Можно ли как-нибудь это исправить ?

Link to comment
Share on other sites

Fawlty: хм похоже у тебя авторизация не запоминается...

похорошему бы надо переделать скрипт!

если выложишь сюда весь свой index.php я исправлю его ошибки, и избавлюсь от окошка авторизации

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...