<?
session_start();
// создаем новую сессию или
// восстанавливаем текущую
$conn = mysql_connect("localhost",
"my_user","my_passwd");
// устанавливаем соединение с БД
mysql_select_db("test");
// выбираем рабочую базу данных
$SERVER_ROOT = "http://localhost/~nina/tasks/sessions/";
// где находятся наши скрипты
/* с помощью регулярного выражения
^$SERVER_ROOT и функции eregi проверяем,
начинается ли адрес ссылающегося скрипта,
т.е. строка $_SERVER['HTTP_REFERER'])
со строки $SERVER_ROOT (как у нас) */
if(eregi("^$SERVER_ROOT",
$_SERVER['HTTP_REFERER'])){
// если да, то делаем почти то же, что и
// раньше, пароль регистрировать не будем
if (!isset($_POST['go'])){
echo "
Login:
Password:
";
}else {
/* запрос к базе данных: выбираем из таблицы
users login, который совпадает с переданным
по запросу, причем пароль у него тоже должен
совпасть с введенным пользователем.
Если этого нет, то считаем, что логин и
пароль введены неверно */
$sql = "SELECT login FROM users
WHERE login='" . $_POST['login'] . "' AND passwd='" . $_POST['passwd'] . "';";
$q = mysql_query($sql,$conn); // отправляем запрос к БД
$n = mysql_num_rows($q); // число строк в ответе на запрос
if (!$n==0){
$_SESSION['user_login']=$_POST['login'];
// регистрируем переменную login
Header("Location: secret_info.php");
// перенаправляем на страницу secret_info.php
}else echo "Неверный ввод, попробуйте еще раз
";
}
print_r($_SESSION); // выводим все переменные сессии
}
?>