Язык программирования PHP



         

Пример 12.6


<?

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); // выводим все переменные сессии

}

?>




Содержание  Назад  Вперед