А. А. Орлов. РНР полезные приемы |
Страница 89 из 178 <?php foreach (file("passw/passwr") as $k) {if (substr($k, 0, -2)=="$login $pass"){$rez=l; }} if ($rez!=l) {...текст страницы, выдающейся посетителю в случае ввода неправильных логина и пароля . .. exit;} Оба варианта были подробно рассмотрены в двух предыдущих разделах этой главы. В результате их выполнения нижеследующий текст сценария будет выполняться только в том случае, если введенные посетителем логин или пароль есть в файле логинов и паролей (имеющем в данном случае имя "passwr"). Продолжение же сценария довольно простое. Создаем сессию... session__start () ; ...регистрируем переменную: session__register (e,auth,f); ...и устанавливаем ей определенное значение - дабы потом его и проверять. $auth=l; Собственно, и все. ?> Дальше следует текст страницы, которую посетитель должен увидеть сразу же после успешной авторизации. Так как идентификатор сессии обычно сохраняется в cookie, то приведенный выше код должен стоять в самом начале страницы, чтобы сервер имел возможность работать с cookies, т. е. был бы в состоянии отправить cookie с идентификатором сессии браузеру посетителя. (Если браузер посетителя не принимает cookie, то иден-тифи-катор сессии будет автоматически присоединяться ко всем найденным на данной странице ссылкам на другие ресурсы сайта.) На каждой странице "защищенной зоны", в самом ее начале нужно поставить код <?php session_start(); 91 |