Скачиваний:
73
Добавлен:
15.03.2015
Размер:
47.58 Кб
Скачать

Задание 22.

<?php

//проверяем, если пришли данные из формы

if($_POST['username']) {

setcookie("username",$_POST["username"]);

//создаем элемент массива cookies, чтобы показать приветствие без перезагрузки страницы

$_COOKIE["username"]=$_POST["username"];

echo "Cookie создан<br/>";

}

//если cookies не установлены - отображаем форму для ввода имени

if(!isset($_COOKIE["username"])) {

echo "<form method='POST' action=''>";

echo "Имя:<input type='text' name='username'/>";

echo "<input type='submit'/>";

echo "</form>";

}else{

//иначе отображаем приветствие

echo "Привет, ".$_COOKIE["username"];

}

?>

Задание 23.

<?php

//установка времени действия cookie десять секунд назад удаляет cookie

setcookie("username","",time()-10);

echo 'cookie "username" уничтожен';

?>

Задание 24.

<?php

$user = $_SERVER["PHP_AUTH_USER"];

$password = $_SERVER["PHP_AUTH_PW"];

//если переменные существуют

if(isset($user) && isset($password)) {

echo "Вы зареге\истрировались как: $user с паролем $password";

}else{

//иначе диалог аутентификации

header('WWW-Authenticate: Basic realm="Member Area"');

}

?>

Задания 25-26.

<?php

/*

* Задание 25 - создаем таблицу users в mysql

* и добавляем туда пользователя

*/

/*

* Задание 26

*/

require_once('db_login.php');

$user = $_SERVER["PHP_AUTH_USER"];

$password = $_SERVER["PHP_AUTH_PW"];

//если переменные существуют

if(isset($user) && isset($password)) {

//Подключаемся к базе данных

$connection = mysql_connect($db_host, $user, $password);

if (!$connection) {

die ("Невозможно подключиться к базе данных: " . mysql_error());

}

//Выбираем нужную базу

$db_select = mysql_select_db($db_database);

if (!$db_select) {

die ("Невозможно выбрать БД: " . mysql_error());

}

//Получаем данные пользователя

$query = "SELECT * FROM users WHERE username='".$user."' AND password='".md5($password)."' LIMIT 1";

$result = mysql_query($query);

$result_row = mysql_fetch_row($result);

//Проверяем результат выполнения mysql_fetch_row()

if ($result_row == FALSE) {

//Если не получили данные пользователя - просим перелогиниться

header('WWW-Authenticate: Basic realm="Member Area"');

} else {

//Иначе выводим сообщение

echo "Подключение осуществлено<br/><br/>";

echo "Имя: $result_row[1]<br/>";

echo "Фамилия: $result_row[2]<br/>";

echo "Имя пользователя: $result_row[3]<br/>";

echo "Хэш-значение пароля: $result_row[4]<br/>";

}

}else{

//иначе диалог аутентификации

header('WWW-Authenticate: Basic realm="Member Area"');

}

?>

Задание 27.

<?php

session_start();

require_once('db_login.php');

$user = $_SERVER["PHP_AUTH_USER"];

$password = $_SERVER["PHP_AUTH_PW"];

if (empty($_SESSION['user_id'])) {

//если переменные существуют

if (isset($user) && isset($password)) {

//Подключаемся к базе данных

$connection = mysql_connect($db_host, $user, $password);

if (!$connection) {

die ("Невозможно подключиться к базе данных: " . mysql_error());

}

//Выбираем нужную базу

$db_select = mysql_select_db($db_database);

if (!$db_select) {

die ("Невозможно выбрать БД: " . mysql_error());

}

if (get_magic_quotes_gpc()) {

$user = stripslashes($user);

$password = stripslashes($password);

}

$user = mysql_real_escape_string($user);

$password = mysql_real_escape_string($password);

//Получаем данные пользователя

$query = "SELECT * FROM users WHERE username='" . $user . "' AND password='" . md5($password) . "' LIMIT 1";

$result = mysql_query($query);

$result_row = mysql_fetch_array($result, MYSQL_BOTH);

//Проверяем результат выполнения mysql_fetch_row()

if ($result_row == FALSE) {

//Если не получили данные пользователя - просим перелогиниться

header('WWW-Authenticate: Basic realm="Member Area"');

} else {

//Иначе выводим сообщение

echo "Подключение осуществлено<br/><br/>";

echo "Имя: $result_row[1]<br/>";

echo "Фамилия: $result_row[2]<br/>";

echo "Имя пользователя: $result_row[3]<br/>";

echo "Хэш-значение пароля: $result_row[4]<br/>";

$_SESSION['user_id'] = $result_row['user_id'];

$_SESSION['username'] = $result_row['username'];

}

} else {

//иначе диалог аутентификации

header('WWW-Authenticate: Basic realm="Member Area"');

}

} else {

echo "Вы посетили страницу под логином " . $_SESSION['username'];

}

?>

Соседние файлы в папке phplab4