Благодарю ) Нашёл у себя самоучитель по ПХП и разобрался во многом.
И всё-таки так и не понял как адаптировать скрипт таким образом, чтобы после введения определённого логина и пароля (или группы логинов и паролей), давало доступ к определённой странице. (по типу почтовой системы). Мне необходимо, чтобы каждый авторизированный клиент получал доступ к своему хтмл-файлу.
Для тех, кто возможно зайдёт в эту тему с таким же вопросом как у меня, привожу текст, который многое для меня прояснил. Авторство к сожалению не знаю.
СЦЕНАРИЙ АВТОРИЗАЦИИ (авторизацию сессиями я счёл набиолее удобной)
Алгоритм сценария прост. После определения допустимости полученных от посетителя каким бы то ни было образом (вводом в форму или в диалоговое окно авторизации) логина и пароля открывается сессия и в ней регистрируется переменная - указатель на успешную авторизацию, которой присваивается определенное значение. На каждой странице "защищенной зоны" проверяется значение полученной с данными сессии этой переменной (а, как вы помните, берется оно не из отправляемых браузером посетителя данных, а из созданного во временной директории сервера файла с данными сессии - браузер посетителя сообщает лишь идентификатор этого файла), и если оно совпадает с обозначающим успешную авторизацию, то посетитель допускается к работе со страницей, если же нет - то доступ к странице не разрешается. На странице "выхода" из защищенной зоны располагается команда session_destroy ();, после выполнения которой идентификатор сессии "забывается" сервером и передача Сценарию переменной - указателя на успешную авторизацию более не происходит - до нового прохождения авторизации.
Начало сценария на странице проверки логина с паролем может быть таким:
foreach (file("passw/passwr") as $k)
{if (substr($k, 0, -2)=="$PHP_AUTH_USER $PHP_AUTH_PW")
{$rez=l;}}
if ($rez!=l) {Header("WWW-Authenticate: Basic realm=\\"Защищенная зона"\\""); Header("HTTP/1.0 401 Unauthorized");
...текст страницы, выдающейся посетителю в случае нажатия им кнопки "Отмена"...
exit,-}
или таким (если логин и пароль передаются из формы в переменных Slogin и Spass):
форма --
код --
foreach (file("passw/passwr") as $k)
{if (substr($k, 0, -2)=="$login $pass"){$rez=l;
if ($rez!=l) {...текст страницы, выдающейся посетителю в случае ввода неправильных логина и пароля ...
exit;}
В результате их выполнения нижеследующий текст сценария будет выполняться только в том случае, если введенные посетителем логин или пароль есть в файле логинов и паролей (имеющем в данном случае имя "passwr").
Продолжение же сценария довольно простое. Создаем сессию...
session_start();
...регистрируем переменную:
session_register("auth");
...и устанавливаем ей определенное значение - дабы потом его и проверять.
$auth=1;
Собственно, и все.
?>
Дальше следует текст страницы, которую посетитель должен увидеть сразу же после успешной авторизации.
Так как идентификатор сессии обычно сохраняется в cookie, то приведенный выше код должен стоять в самом начале страницы, чтобы сервер имел возможность работать с cookies, т. е. был бы в состоянии отправить cookie с идентификатором сессии браузеру посетителя. (Если браузер посетителя не принимает cookie, то идентификатор сессии будет автоматически присоединяться ко всем найденным на данной странице ссылкам на другие ресурсы сайта.)
На каждой странице "защищенной зоны", в самом ее начале нужно поставить код
if ($auth!=l)
{...текст страницы, выдающейся посетителю в случае попытки несанкционированного доступа...
exit;}
...и все, что после этого кода, будет выполнено и/или выдано посетителю только в том случае, если он успешно прошел авторизацию на первой странице. При заходе на страницу "защищенной зоны" браузер посетителя перешлет серверу cookie с идентификатором сессии, а сервер возьмет из своего временного хранилища значение всех переменных сессии и передаст их сценарию.
Страница выхода из "защищенной зоны" должна содержать код (если в файле php.ini установлен в 1 параметр session.autostart, то указывать команду session_start () на каждой странице, где используются переменные сессии или производятся действия с самой сессией, не обязательно).
session_start(); session_destroy(); ?>
После его выполнения для посещения страниц "защищенной зоны" вновь потребуется авторизация.