Перейти к содержанию
СофтФорум - всё о компьютерах и не только

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


Рекомендуемые сообщения

Есть скрипт, при попытке открыть его в браузере появляется окно с просьбой ввести логин и пароль, верно указав логин и пароль скрипт загружается, если не верно указать или вообще не заполнить данные поля получаю сообщение "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 форму ?

Ссылка на комментарий
Поделиться на другие сайты

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>

Удачи!

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

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

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

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

Ссылка на комментарий
Поделиться на другие сайты

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

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

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

Ссылка на комментарий
Поделиться на другие сайты

index.php не влазит слишком много символов.

Весь скрипт целиком выложил сюда: http://pages.ya1.ru/darkstar/script.rar

Размер архива: 65 kb

Ссылка на комментарий
Поделиться на другие сайты

вот подпраил фаил index.php

правда форму не вставил, вставишь где нужно так как я описал выше

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...