Федеральное агентство по образованию ГОУ ВПО Уфимский государственный авиационный технический университет

advertisement
Федеральное агентство по образованию
ГОУ ВПО Уфимский государственный авиационный технический университет
Кафедра информатики
ОТЧЕТ
ПО ЛАБОРАТОРНОЙ РАБОТЕ №5
по дисциплине:
«Компьютерные технологии в науке и производстве»
на тему:
«Создание многопользовательского приложения, реализующего работу
интернет-авиакассы»
Выполнил:
магистрант гр.Т-15
Пятков П.А.
«13» декабря 2010 г.
Проверил:
канд.техн.наук, доцент
Минасов Ш.М.
« »
20 10 г.
Оценка «
»
Уфа – 2010
ОГЛАВЛЕНИЕ
1.Цель работы .............................................................................................................. 3
2.Ход выполнения работы .......................................................................................... 3
3.Индивидуальное задание ......................................................................................... 3
3.1.Постановка задачи............................................................................................. 3
3.1.Алгоритм выполнения задачи .......................................................................... 4
3.2.Фрагменты программного кода ....................................................................... 4
Экранные формы реализованного проекта ........................................................ 39
Выводы ....................................................................................................................... 47
Список литературы ................................................................................................... 48
2
1.
ЦЕЛЬ РАБОТЫ
Целью настоящей работы является изучение принципов создания
многопользовательских интернет приложений.
2.
ХОД ВЫПОЛНЕНИЯ РАБОТЫ
1. В соответствии с методическими указаниями по лабораторной работе
[Error! Reference source not found.] были изучены принципы построения
запросов к базе данных.
2. Выполнены
и
проанализированы
примеры,
приведенные
в
методических указаниях [Error! Reference source not found.].
3. Выполнено индивидуальное задание для самостоятельной работы.
3.
ИНДИВИДУАЛЬНОЕ ЗАДАНИЕ
3.1. Постановка задачи
Необходимо
создать
приложение,
осуществляющее
ввод,
редактирование, удаление информации из таблиц базы данных, осуществлять
вывод отчетов по требуемым параметрам, осуществлять выборку данных в
соответствии с условиями, задаваемыми пользователями.
Предусмотреть варианты работы в режиме администратора, оператора,
клиента,
управляющего.
Режим
администратора
должен
обеспечивать
управление пользователями и их правами в системе. Интерфейс оператора
должен обеспечить возможность вносить изменения в расписание самолетов.
Интерфейс клиента должен реализовать механизм «покупательской тележки»,
позволяющий
формировать
заказы.
Интерфейс
управляющего
должен
реализовывать соответствующую обработку заказов.
Предоставление интерфейса должно осуществляться в соответствии с
правами пользователя на основе анализа его входного имени. Работа системы
без регистрации (авторизации) пользователя должна осуществляться только в
предоставлении открытой (рекламной) информации. Заказ продукции или услуг
3
должен быть предоставлен исключительно зарегистрированным пользователям
системы.
3.1. Алгоритм выполнения задачи
Первой страницей приложения является форма для ввода логина и пароля.
Далее данные с формы отправляются скрипту avtoriz.php, который, в
зависимости от имени и прав доступа пользователя, направляет его на нужную
страницу.
На странице form_user.php пользователь может выбрать параметры рейса.
Далее они отправляются в файл user.php, где пользователь выбирает нужный
ему рейс и отправляет данные в корзину.
В корзине пользователь может посмотреть список своих заказов и удалить
ненужные. Код, необходимый для добавления заказа, находится в файле
add.php.
На странице manager.php управляющий может выбрать
пользователя и просмотреть список его заказов. После выполнения заказа
управляющий имеет возможность удалить заказ из корзины пользователя. Код,
необходимый для удаления заказов, находится в файле manager_del.php.
На странице oper_db.php оператор базы данных может удалять и
добавлять данные в таблицы с расписанием и типом самолетов.
На странице admin_user.php администратор может производить операции
с пользователями: добавлять пользователей, назначать права доступа и удалять
пользователей.
3.2. Фрагменты программного кода
Файл index.htm:
<html lang="ru">
<head>
<title>Лабораторная работа №5</title>
<style type="text/css">
body,
html {
4
margin:0;
padding:0;
background:#FFF;
color:#000;
}
#wrap {
margin-top: 20;
margin-left: 15%;
text-align: justify;
width:800px;
}
</style>
</head>
<body>
<div id="wrap">
<style type="text/css">
<!-body {
background-color: #FEF7C0;
}
-->
</style>
<h4 align='left'>Добро пожаловать в систему интернетрасписание!<br>Для просмотра расписания необходимо пройти
авторизацию.</h4> <hr>
<form action="script/avtoriz.php" method="post">
<p>Входное имя <input type=text name=login>
Пароль <input type=password name=password>
<p><input type=submit value="Подтвердить">
<p><A HREF="../index.htm">Вернуться на главную
страницу</A>
</form>
</div>
</body>
</html>
Файл avtoriz.php:
<?php
SESSION_START();
$_SESSION['login']=$_POST['login'];
$_SESSION['password']=$_POST['password'];
5
//------------------------------------------------------if (!mysql_connect("localhost", "root", ""))
{
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;
}
// Выбираем базу данных:
mysql_select_db("mag2010-4363");
$q = mysql_query("SELECT
`login`.`id`,`login`.`login`,`login`.`pass`,
`type_user`.`type_user`
FROM `login`,`type_user`
WHERE `login`.`id_type`
=`type_user`.`id` AND
`login`.`login`='$_SESSION[login]'
AND
`login`.`pass`='$_SESSION[password]'");
if(mysql_num_rows($q)==0){
echo"Неверные регистрационные данные. ";
echo"<A HREF='../index.htm'>Вернуться на
страницу регистрации</A>";
}
else{
$m=mysql_fetch_row($q);
if($m[3]=="Администратор учетных
записей"){
echo"<A
HREF='admin_user.php'>Продолжить работу с учетной записью
Администратор и именем $_SESSION[login] </A>";
echo"<br><A
HREF='../index.htm'>Вернуться на страницу
регистрации</A>";}
if($m[3]=="Оператор БД"){
echo"<A
HREF='oper_db.php'>Продолжить работу с учетной записью
Оператор БД и именем $_SESSION[login]</A>";
echo"<br><A
HREF='../index.htm'>Вернуться на страницу
регистрации</A>";}
if($m[3]=="Менеджер"){
echo"<A
HREF='manager.php'>Продолжить работу с записью Менеджер и
именем $_SESSION[login]</A>";
6
echo"<br><A
HREF='../index.htm'>Вернуться на страницу
регистрации</A>";}
if($m[3]=="Пользователь"){
echo"<A
HREF='form_user.php'>Продолжить работу с учетной записью
Пользователь и именем $_SESSION[login] </A>";
echo"<br><A
HREF='../index.htm'>Вернуться на страницу
регистрации</A>";}
$_SESSION['id']=$m[0];
}
?>
Файл form_user.php:
<?php
SESSION_START();
If(!array_key_exists("login",$_SESSION))
die ('Пройдите <a href="index.htm">
авторизацию </a> ');
//if ($_SESSION['login']!="user" OR
$_SESSION['password']!="")
//die ('Пройдите <a
href="../index.htm">авторизацию</a>');
echo '<h3>Авиакомпания "4363" приветствует Вас!</h3>';
echo"<p><form method='POST' action='user.php'
align='left'>";
if
(!mysql_connect("localhost","mag2010","sqrt")){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
mysql_select_db("mag2010-4363");
$result = mysql_query("SELECT * FROM
`airport_arr`");
$kolstr=mysql_num_rows($result);
echo"<hr>";
echo"&nbsp Выберите пункт
вылета:&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp";
echo("<select name='sel_arr' size=1>");
$i=0;
while ($i<$kolstr){
7
$var=mysql_fetch_array($result);
echo("<option
value=$var[id]>".$var[airport_arr]."</option>");
$i++;}
echo"</select><br>";
echo"<p><form method='POST' action='user.php'
align='left'>";
if
(!mysql_connect("localhost","mag2010","sqrt")){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
mysql_select_db("mag2010-4363");
$result = mysql_query("SELECT * FROM
`airport_dep`");
$kolstr=mysql_num_rows($result);
echo"&nbsp Выберите пункт прибытия:&nbsp";
echo("<select name='sel_dep' size=1>");
$i=0;
while ($i<$kolstr){
$var=mysql_fetch_array($result);
echo("<option
value=$var[id]>".$var[airport_dep]."</option>");
$i++;}
echo"</select><br>";
echo '
<style type="text/css">
<!-body {
background-color: #FEF7C0;
}
-->
</style><hr>
&nbsp&nbspВыберите день
недели:&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp
<form action="user.php" method=POST>
<select
<option
<option
<option
name="day" size="1">
value="1">Понедельник</option>
value="2">Вторник</option>
value="3">Среда</option>
8
<option
<option
<option
<option
<option
value="4">Четверг</option>
value="5">Пятница</option>
value="6">Суббота</option>
value="7">Воскресенье</option>
value="15" >Все дни</option>
</select><p>
&nbsp&nbspВыберите время вылета:<br>
<input type=radio name="vzlet" value="0">
Все рейсы с 00.00 до 08.00<br>
<input type=radio name="vzlet" value="8">
Все рейсы с 08.00 до 16.00<br>
<input type=radio name="vzlet" value="16">
Все рейсы с 16.00 до 24.00<br>
<input type=radio name="vzlet" value="150" CHECKED>
Расписание на весь день<br>
<input type=submit value="Отправить">
<input type=reset value="Отменить">
</form>';
echo"<p><A HREF='../index.htm'>Вернуться на страницу
регистрации</A><hr>";
?>
Файл user.php:
<?php
//подключение к БД
error_reporting(E_ALL);
$host = "localhost";
$user = "mag2010";
$password = "sqrt";
$db="mag2010-4363";
if (!mysql_connect($host, $user, $password)){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
//Проверка авторизации
SESSION_START();
if(!array_key_exists("login",$_SESSION))
9
die('Пройдите <a
href="../index.htm">авторизацию</a>');
//Проверка подключения к БД
if (!mysql_connect("localhost","mag2010","sqrt")){
echo "<h2>Ошибка при подключении к MySQL!</h2>";
exit;}
//Получение данных с формы form_user.php
$vzlet=$_REQUEST["vzlet"];
$day=$_REQUEST["day"];
$sel_dep=$_REQUEST["sel_dep"];
$sel_arr=$_REQUEST["sel_arr"];
echo '<h3>Авиакомпания "4363" приветствует Вас!</h3>';
echo '
<style type="text/css">
<!-body {
background-color: #FEF7C0;
}
-->
</style>
';
//вывод данных на экран
echo "
<table border='1' cellpadding='4' align='center'>
<tr>
<th>ID</th> <th>День недели</th><th>Номер
борта</th><th>Пункт отправления</th> <th>Пункт
прибытия</th> <th>Время вылета</th> <th>Время
прилета</th><th>Стоимость, руб.</th><th>Купить билет</th>
</tr>";
mysql_select_db("mag2010-4363");
switch($_REQUEST['vzlet'])
{
case 0:
if($day==15)
{
$query = mysql_query("SELECT `day`.`day_id` ,
`bort`.`bort_id` , `airport_dep`.`airport_dep` ,
`airport_arr`.`airport_arr` , `airport`.`departure` ,
`airport`.`arrival` , `airport`.`cost` , `airport`.`id`
10
FROM `airport` , `day` , `bort` , `airport_dep` ,
`airport_arr`
WHERE `airport`.`day_id` = `day`.`id`
AND `airport`.`bort_id` = `bort`.`id`
AND `airport`.`airport_arr_id` = `airport_dep`.`id`
AND `airport`.`airport_dep_id` = `airport_arr`.`id`
AND `airport`.`airport_arr_id` LIKE $sel_arr
AND `airport`.`airport_dep_id` LIKE $sel_dep
AND `departure` > '00:00:00'
AND `departure` < '08:00:00'
");
}
else
{
$query = mysql_query("SELECT `day`.`day_id` ,
`bort`.`bort_id` , `airport_dep`.`airport_dep` ,
`airport_arr`.`airport_arr` , `airport`.`departure` ,
`airport`.`arrival` , `airport`.`cost` , `airport`.`id`
FROM `airport` , `day` , `bort` , `airport_dep` ,
`airport_arr`
WHERE `airport`.`day_id` = `day`.`id`
AND `airport`.`bort_id` = `bort`.`id`
AND `airport`.`airport_arr_id` = `airport_dep`.`id`
AND `airport`.`airport_dep_id` = `airport_arr`.`id`
AND `airport`.`airport_arr_id` LIKE $sel_arr
AND `airport`.`airport_dep_id` LIKE $sel_dep
AND `day`.`id` LIKE $day
AND `departure` > '00:00:00'
AND `departure` < '08:00:00'
");
}
echo "<h4>Время вылета приведено с 00:00:00 до
08:00:00.</h4>"; break;
case 8:
if($day==15)
{
$query = mysql_query("SELECT `day`.`day_id` ,
`bort`.`bort_id` , `airport_dep`.`airport_dep` ,
`airport_arr`.`airport_arr` , `airport`.`departure` ,
`airport`.`arrival` , `airport`.`cost` , `airport`.`id`
FROM `airport` , `day` , `bort` , `airport_dep` ,
`airport_arr`
WHERE `airport`.`day_id` = `day`.`id`
AND `airport`.`bort_id` = `bort`.`id`
11
AND `airport`.`airport_arr_id` = `airport_dep`.`id`
AND `airport`.`airport_dep_id` = `airport_arr`.`id`
AND `airport`.`airport_arr_id` LIKE $sel_arr
AND `airport`.`airport_dep_id` LIKE $sel_dep
AND `departure` > '08:00:00'
AND `departure` < '16:00:00'
");
}
else
{
$query = mysql_query("SELECT `day`.`day_id` ,
`bort`.`bort_id` , `airport_dep`.`airport_dep` ,
`airport_arr`.`airport_arr` , `airport`.`departure` ,
`airport`.`arrival` , `airport`.`cost` , `airport`.`id`
FROM `airport` , `day` , `bort` , `airport_dep` ,
`airport_arr`
WHERE `airport`.`day_id` = `day`.`id`
AND `airport`.`bort_id` = `bort`.`id`
AND `airport`.`airport_arr_id` = `airport_dep`.`id`
AND `airport`.`airport_dep_id` = `airport_arr`.`id`
AND `airport`.`airport_arr_id` LIKE $sel_arr
AND `airport`.`airport_dep_id` LIKE $sel_dep
AND `day`.`id` LIKE $day
AND `departure` > '08:00:00'
AND `departure` < '16:00:00'
");
}
echo "<h4>Время вылета приведено с 08:00:00 до
16:00:00.</h4>" ;break;
case 16:
if($day==15)
{
$query = mysql_query("SELECT `day`.`day_id` ,
`bort`.`bort_id` , `airport_dep`.`airport_dep` ,
`airport_arr`.`airport_arr` , `airport`.`departure` ,
`airport`.`arrival` , `airport`.`cost` , `airport`.`id`
FROM `airport` , `day` , `bort` , `airport_dep` ,
`airport_arr`
WHERE `airport`.`day_id` = `day`.`id`
AND `airport`.`bort_id` = `bort`.`id`
AND `airport`.`airport_arr_id` = `airport_dep`.`id`
AND `airport`.`airport_dep_id` = `airport_arr`.`id`
AND `airport`.`airport_arr_id` LIKE $sel_arr
12
AND `airport`.`airport_dep_id`
AND `departure` > '16:00:00'
AND `departure` < '24:00:00'
");
}
LIKE $sel_dep
else
{
$query = mysql_query("SELECT `day`.`day_id` ,
`bort`.`bort_id` , `airport_dep`.`airport_dep` ,
`airport_arr`.`airport_arr` , `airport`.`departure` ,
`airport`.`arrival` , `airport`.`cost` , `airport`.`id`
FROM `airport` , `day` , `bort` , `airport_dep` ,
`airport_arr`
WHERE `airport`.`day_id` = `day`.`id`
AND `airport`.`bort_id` = `bort`.`id`
AND `airport`.`airport_arr_id` = `airport_dep`.`id`
AND `airport`.`airport_dep_id` = `airport_arr`.`id`
AND `airport`.`airport_arr_id` LIKE $sel_arr
AND `airport`.`airport_dep_id` LIKE $sel_dep
AND `day`.`id` LIKE $day
AND `departure` > '16:00:00'
AND `departure` < '24:00:00'
");
}
echo "<h4>Время вылета приведено с 16:00:00 до
24:00:00.</h4>";
break;
case 150:
if($day==15)
{
$query = mysql_query("SELECT `day`.`day_id` ,
`bort`.`bort_id` , `airport_dep`.`airport_dep` ,
`airport_arr`.`airport_arr` , `airport`.`departure` ,
`airport`.`arrival` , `airport`.`cost` , `airport`.`id`
FROM `airport` , `day` , `bort` , `airport_dep` ,
`airport_arr`
WHERE `airport`.`day_id` = `day`.`id`
AND `airport`.`bort_id` = `bort`.`id`
AND `airport`.`airport_arr_id` = `airport_dep`.`id`
AND `airport`.`airport_dep_id` = `airport_arr`.`id`
AND `airport`.`airport_arr_id` LIKE $sel_arr
AND `airport`.`airport_dep_id` LIKE $sel_dep
AND `departure` > '00:00:00'
13
AND `departure` < '23:59:59'
");
}
else
{
$query = mysql_query("SELECT `day`.`day_id` ,
`bort`.`bort_id` , `airport_dep`.`airport_dep` ,
`airport_arr`.`airport_arr` , `airport`.`departure` ,
`airport`.`arrival` , `airport`.`cost` , `airport`.`id`
FROM `airport` , `day` , `bort` , `airport_dep` ,
`airport_arr`
WHERE `airport`.`day_id` = `day`.`id`
AND `airport`.`bort_id` = `bort`.`id`
AND `airport`.`airport_arr_id` = `airport_dep`.`id`
AND `airport`.`airport_dep_id` = `airport_arr`.`id`
AND `airport`.`airport_arr_id` LIKE $sel_arr
AND `airport`.`airport_dep_id` LIKE $sel_dep
AND `day`.`id` LIKE $day
AND `departure` > '00:00:00'
AND `departure` < '23:59:59'
");
}
echo "<h4> Расписание приведено на весь день.</h4>";
break;
};
while ($array = mysql_fetch_array($query))
{
$x=$array['id'];
echo '
<tr>
<td>'.$x.'</td>
<td>'.$array['day_id'].'</td>
<td>'.$array['bort_id'].'</td>
<td>'.$array['airport_dep'].'</td>
<td>'.$array['airport_arr'].'</td>
<td>'.$array['departure'].'</td>
<td>'.$array['arrival'].'</td>
<td>'.$array['cost'].'</td>
<td>
<form action="buy.php" method=POST>
<p align="center"><input type=radio name="buy"
value='.$x.'> </td>
14
</tr>
';
}
echo '</table>';
echo '<input type=submit value="Отправить">
<hr>
</form>';
echo '<br><a href="form_user.php">
Вернуться к расписанию</a><br> ';
echo"<p><A HREF='buy.php'>Перейти в корзину</A>";
echo"<hr>";
//-------------------------------------------------------------------------------------------------------?>
Файл buy.php:
<?php
//подключение к БД
$host = "localhost";
$user = "mag2010";
$password = "sqrt";
$db="mag2010-4363";
if (!mysql_connect($host, $user, $password)){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
//Проверка авторизации
SESSION_START();
if(!array_key_exists("login",$_SESSION))
die('Пройдите <a
href="../index.htm">авторизацию</a>');
echo '<h3>Авиакомпания "4363" приветствует Вас!</h3>';
echo '
<style type="text/css">
<!-body {
15
background-color: #FEF7C0;
}
-->
</style>
';
//Добавляем запись о покупке в корзину
$buy=$_REQUEST["buy"];
echo"<h4 align='left'>Вы зашли как пользователь
$_SESSION[login]</h4> <hr> ";
echo"Выберите действие:";
echo"<br><form method='POST'
action='add.php'>";
echo"<input type='radio' name='act_buy'
value='$buy' CHECKED>Добавить в корзину билет на рейс с
выбранным номером ( $buy )<br>";
echo"<input type='submit' value='OK'>
</form>";
echo"<hr>";
echo"<br><form method='POST' action='buy.php'>";
echo"<input type='radio' name=act_buy
value='del_buy'>Удалить билет из корзины<br>";
echo"<input type='submit' value='OK'>";
echo"<hr>
</form>";
if(isset($_POST['act_buy'])){
if ($_POST['act_buy']=='del_buy'){
echo"<p><form method='POST' action='buy.php'>";
echo"<p>Введите ID рейса, который необходимо
удалить:<br><input type='text' name='buy_rem_day'><br>";
echo"<input type='submit' value='Удалить'>";
echo"</form>";
echo"<hr>";
}
}
//код для удаления строки
if(isset($_POST['buy_rem_day'])){
if(!mysql_connect("localhost","mag2010","sqrt")){
16
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
mysql_select_db("mag2010-4363");
mysql_query("DELETE FROM `buy` WHERE
`idb`='$_POST[buy_rem_day]'");
}
//----------------------------------------Вывод таблицы
пользователя-------------------------------------------------------echo "<th>";
echo "<h4 align='left'>Корзина пользователя
$_SESSION[login]:</h4>";
echo "<table border='1' cellpadding='4' align='center'>
<tr>
<th>ID</th> <th>День недели</th><th>Номер
борта</th><th>Пункт отправления</th> <th>Пункт
прибытия</th> <th>Время вылета</th> <th>Время
прилета</th><th>Стоимость, руб.</th>
</tr>";
mysql_select_db("mag2010-4363");
$query = mysql_query("SELECT `buy`.`idb` , `buy`.`buy_id`
, `day`.`day_id` , `bort`.`bort_id` ,
`airport_dep`.`airport_dep` ,
`airport_arr`.`airport_arr`, `airport`.`departure` ,
`airport`.`arrival` , `airport`.`cost` , `airport`.`id`
FROM `airport` , `day` , `bort` , `buy`, `airport_dep` ,
`airport_arr`
WHERE `airport`.`day_id` = `day`.`id`
AND `airport`.`bort_id` = `bort`.`id`
AND `airport`.`airport_arr_id` = `airport_dep`.`id`
AND `airport`.`airport_dep_id` = `airport_arr`.`id`
AND `airport`.`id` = `buy`.`buy_id`
AND `buy`.`user_id` =$_SESSION[id]
LIMIT 0 , 30");
while ($array = mysql_fetch_array($query))
{
echo '
<tr>
<td>'.$array['idb'].'</td>
17
<td>'.$array['day_id'].'</td>
<td>'.$array['bort_id'].'</td>
<td>'.$array['airport_dep'].'</td>
<td>'.$array['airport_arr'].'</td>
<td>'.$array['departure'].'</td>
<td>'.$array['arrival'].'</td>
<td>'.$array['cost'].'</td>
</tr>
';
}
echo '</table>';
echo"<p><A HREF='form_user.php'>Вернуться к
расписанию</A>";
echo"<hr>";
?>
Файл add.php:
<?php
session_start();
$host = "localhost";
$user = "root";
$password = "";
$db="mag2010-4363";
if (!mysql_connect($host, $user, $password)){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
//Проверка авторизации
SESSION_START();
if(!array_key_exists("login",$_SESSION))
die('Пройдите <a
href="../index.htm">авторизацию</a>');
if(!mysql_connect("localhost","root","")){
echo "<h2>Ошибка при подключении к MySQL!</h2>";
exit;}
mysql_select_db("mag2010-4363");
18
mysql_query("INSERT INTO `buy` (`idb`,
`buy_id`,`user_id`) VALUES
('','$_POST[act_buy]','$_SESSION[id]')");
header("location:buy.php");
?>
Файл manager.php:
<?php
//подключение к БД
$host = "localhost";
$user = "mag2010";
$password = "sqrt";
$db="mag2010-4363";
if (!mysql_connect($host, $user, $password)){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
//Проверка авторизации
SESSION_START();
$manager_sel = isset($_POST['manager_sel']);
//$_SESSION['manager_login']=isset($_POST['manager_sel'])
;
if(!array_key_exists("login",$_SESSION))
die('Пройдите <a
href="../index.htm">авторизацию</a>');
//Добавляем запись о покупке в корзину
echo"<h4 align='left'>Вы зашли как менеджер:
$_SESSION[login]</h4> ";
echo '
<style type="text/css">
<!-body {
background-color: #FEF7C0;
}
-->
</style>
';
echo"<hr> ";
19
echo"Выберите действие:";
echo"<br><form method='POST'
action='manager_del.php'>";
echo"<input type='radio' name='act_buy'
value='del_buy'>Удалить билет из корзины<br>";
echo"<input type='submit' value='OK'>
</form>";
echo"<hr>";
echo"<br><form method='POST' action='manager.php'>";
echo"<input type='radio' name='act_buy'
value='manager_show'>Выбрать пользователя<br>";
echo"<input type='submit' value='OK'>";
echo"<hr>
</form>";
if(isset($_POST['act_buy'])){
if ($_POST['act_buy']=='manager_show'){
echo"<p><form method='POST' action='manager.php'
align='left'>";
if (!mysql_connect("localhost","mag2010","sqrt")){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
mysql_select_db("mag2010-4363");
echo"&nbsp Выберите пользователя:";
$result = mysql_query("SELECT `buy`.`idb` ,
`buy`.`buy_id` , `buy`.`user_id` , `login`.`login` ,
`login`.`id_type`
FROM `login` , `buy`
WHERE `login`.`id` = `buy`.`user_id`
AND `login`.`id_type` =3");
$kolstr=mysql_num_rows($result);
echo"<select name='loginoper' size=1>";
$i=0;
while ($i<$kolstr){
$var=mysql_fetch_array($result);
echo("<option
value=$var[login]>".$var[login]."</option>");
20
$i++;}
echo"</select><br>";
echo"<input type='submit' name='table' value='OK'>";
echo"</form>";
echo"<hr>";
}}
//-----------------------------------------------------------------------------------------------if(isset($_POST['table'])){
echo "<h4>Корзина пользователя: </h4>";
if (!mysql_connect("localhost","mag2010","sqrt")){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
mysql_select_db("mag2010-4363");
echo "<table border='1' cellpadding='4' align='center'>
<tr>
<th>ID</th> <th>День недели</th><th>Номер
борта</th><th>Пункт отправления</th> <th>Пункт
прибытия</th> <th>Время вылета</th> <th>Время
прилета</th><th>Стоимость, руб.</th><th>Логин</th>
</tr>";
$query = mysql_query("SELECT `buy`.`idb` , `day`.`day_id`
, `bort`.`bort_id` , `airport_dep`.`airport_dep` ,
`airport_arr`.`airport_arr` , `airport`.`departure` ,
`airport`.`arrival` , `airport`.`cost`
FROM `buy` , `bort` , `airport` , `day` , `login` ,
`airport_dep` , `airport_arr`
WHERE `buy`.`buy_id` = `airport`.`id`
AND `airport`.`bort_id` = `bort`.`id`
AND `airport`.`day_id` = `day`.`id`
AND `login`.`id` = `buy`.`user_id`
AND `airport`.`airport_arr_id` = `airport_dep`.`id`
AND `airport`.`airport_dep_id` = `airport_arr`.`id`
AND `login` LIKE '$_POST[loginoper]' ");
while ($array = mysql_fetch_array($query))
{
echo '
<tr>
21
<td>'.$array['idb'].'</td>
<td>'.$array['day_id'].'</td>
<td>'.$array['bort_id'].'</td>
<td>'.$array['airport_dep'].'</td>
<td>'.$array['airport_arr'].'</td>
<td>'.$array['departure'].'</td>
<td>'.$array['arrival'].'</td>
<td>'.$array['cost'].'</td>
<td>'.$_POST['loginoper'].'</td>
</tr>
';
}
echo '</table>';
}
echo"<p><A HREF='../index.htm'>Вернуться к старнице
авторизации</A>";
echo"<hr>";
?>
Файл manager_del.php:
<?php
$host = "localhost";
$user = "root";
$password = "";
$db="mag2010-4363";
if (!mysql_connect($host, $user, $password)){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
//Проверка авторизации
SESSION_START();
$_SESSION['manager_login']=$_POST[manager_sel];
if(!array_key_exists("login",$_SESSION))
die('Пройдите <a
href="../index.htm">авторизацию</a>');
echo '
<style type="text/css">
<!-body {
background-color: #FEF7C0;
}
22
-->
</style>
';
//Добавляем запись о покупке в корзину
echo"<h4 align='left'>Вы зашли как менеджер:
$_SESSION[login] </h4>";
echo"<p><form method='POST' action='manager_del.php'>";
echo"<p>Введите ID заказа, который
необходимо удалить:<br><input type='text'
name='buy_rem_day'><br>";
echo"<input type='submit' value='Удалить'>";
echo"</form>";
echo"<hr>";
echo"Текущие заказы:<br>";
//код для удаления строки
if(isset($_POST['buy_rem_day'])){
if(!mysql_connect("localhost","root","")){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
mysql_select_db("mag2010-4363");
mysql_query("DELETE FROM `buy` WHERE
`idb`='$_POST[buy_rem_day]'");
}
if (!mysql_connect("localhost","root","")){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
mysql_select_db("mag2010-4363");
echo "<table border='1' cellpadding='4' align='center'>
<tr>
<th>ID</th> <th>День недели</th><th>Номер
борта</th><th>Время вылета</th> <th>Время прилета</th>
<th>Стоимость, руб.</th> <th>Логин покупателя</th>
</tr>";
$query = mysql_query("SELECT
`buy`.`idb`,`day`.`day_id`,`bort`.`bort_id`,`airport`.`de
23
parture`,`airport`.`arrival`,`bort`.`cost`,`login`.`login
`
FROM `buy` , `bort` , `airport` , `day` , `login`
WHERE `buy`.`buy_id` = `airport`.`id`
AND `airport`.`bort_id` = `bort`.`id`
AND `airport`.`day_id` = `day`.`id`
AND `login`.`id` = `buy`.`user_id` ");
while ($array = mysql_fetch_array($query))
{
echo '
<tr>
<td>'.$array['idb'].'</td>
<td>'.$array['day_id'].'</td>
<td>'.$array['bort_id'].'</td>
<td>'.$array['departure'].'</td>
<td>'.$array['arrival'].'</td>
<td>'.$array['cost'].'</td>
<td>'.$array['login'].'</td>
</tr>
';
}
echo '</table>';
echo"<p><A HREF='manager.php'>Вернуться к выбору
пользователя</A>";
echo"<hr>";
?>
Файл oper_db.php:
<?php
//------------------------------------------------------------------------------------------------function bort_out($z,$p1,$p2) {
$host = "localhost";
$user = "mag2010";
$password = "sqrt";
mysql_select_db("mag2010-4363");
if (!mysql_connect($host, $user, $password))
{
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;
}
24
echo "<table border='1' cellpadding='4' align='center'>
<tr>
<th>ID</th><th>Борт</th>
</tr>";
echo "Таблица 'bort'.";
// SQL-запрос:
$q = mysql_query($z);
// Выводим таблицу:
while ($array = mysql_fetch_array($q))
{
echo '
<tr>
<td>'.$array[$p1].'</td>
<td>'.$array[$p2].'</td>
</tr>
';
}
echo '</table>';
mysql_close();
};
//----------------------------------------------------------------------------function day_out($z,$p1,$p2) {
$host = "localhost";
$user = "mag2010";
$password = "sqrt";
mysql_select_db("mag2010-4363");
if (!mysql_connect($host, $user, $password))
{
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;
}
echo "<table border='1' cellpadding='4' align='center'>
<tr>
<th>ID</th><th>День недели</th>
</tr>";
echo "Таблица 'day'.";
// SQL-запрос:
$q = mysql_query($z);
// Выводим таблицу:
25
while ($array = mysql_fetch_array($q))
{
echo '
<tr>
<td>'.$array[$p1].'</td>
<td>'.$array[$p2].'</td>
</tr>
';
}
echo '</table>';
mysql_close();
};
//----------------------------------------------------------------------------------function airport_out($z,$p1,$p2,$p3,$p4,$p5,$p6,$p7,$p8)
{
$host = "localhost";
$user = "mag2010";
$password = "sqrt";
mysql_select_db("mag2010-4363");
if (!mysql_connect($host, $user, $password))
{
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;
}
echo "<table border='1' cellpadding='4' align='center'>
<tr>
<tr>
<th>ID</th> <th>День недели</th><th>Номер
борта</th><th>Пункт отправления</th> <th>Пункт
прибытия</th> <th>Время вылета</th> <th>Время
прилета</th><th>Стоимость, руб.</th>
</tr>";
echo "Таблица 'airport'.";
// SQL-запрос:
$q = mysql_query($z);
// Выводим таблицу:
while ($array = mysql_fetch_array($q))
{
echo '
26
<tr>
<td>'.$array[$p1].'</td>
<td>'.$array[$p2].'</td>
<td>'.$array[$p3].'</td>
<td>'.$array[$p4].'</td>
<td>'.$array[$p5].'</td>
<td>'.$array[$p6].'</td>
<td>'.$array[$p7].'</td>
<td>'.$array[$p8].'</td>
</tr>
';
}
echo '</table>';
mysql_close();
};
//-------------------------------------------------------------------------------------------------------------//Проверка авторизации
SESSION_START();
if(!array_key_exists("login",$_SESSION))
die('Пройдите <a
href="../index.htm">авторизацию</a>');
//Проверка подключения к БД
if (!mysql_connect("localhost","mag2010","sqrt")){
echo "<h2>Ошибка при подключении к MySQL!</h2>";
exit;}
//------------------------------------------------------------------------------------------------echo '
<style type="text/css">
<!-body {
background-color: #FEF7C0;
}
-->
</style>
';
echo "<h4 align='left'>Вы зашли как Оператор БД с именем
$_SESSION[login]</h4>";
echo"Выберите одну из таблиц БД:";
echo"<br><form method='POST' action='oper_db.php'>";
27
echo"<input type='radio' name='tbl'
value='airport'>Аэропорт<br>";
echo"<input type='radio' name='tbl'
value='bort'>Борт<br>";
echo"<input type='submit' value='Выбрать'>";
echo"</form>";
//Вывод таблицы airport----------------------------------------------------------------------if(isset($_POST['tbl'])){
if ($_POST['tbl']=='airport'){
echo"<hr>";
echo"Выберите действие:";
echo"<br><form method='POST'
action='oper_db.php'>";
echo"<input type='radio' name='act_airport'
value='add_airport'>Добавить запись<br>";
echo"<input type='radio' name='act_airport'
value='del_airport'>Удалить запись<br>";
echo"<input type='submit' value='OK'>";
echo"<hr>";
$zapros="SELECT `day`.`day_id` , `bort`.`bort_id` ,
`airport_dep`.`airport_dep` , `airport_arr`.`airport_arr`
, `airport`.`departure` , `airport`.`arrival` ,
`airport`.`cost` , `airport`.`id`
FROM `airport` , `day` , `bort` , `airport_dep` ,
`airport_arr`
WHERE `airport`.`day_id` = `day`.`id`
AND `airport`.`bort_id` = `bort`.`id`
AND `airport`.`airport_arr_id` = `airport_dep`.`id`
AND `airport`.`airport_dep_id` = `airport_arr`.`id`";
airport_out($zapros,'id','day_id','bort_id','airport_
dep','airport_arr','departure','arrival','cost');
}
//Вывод таблицы bort-----------------------------------------------------------------if ($_POST['tbl']=='bort'){
echo"<hr>";
echo"Выберите действие:";
28
echo"<br><form method='POST'
action='oper_db.php'>";
echo"<input type='radio' name='act_bort'
value='add_bort'>Добавить запись<br>";
echo"<input type='radio' name='act_bort'
value='del_bort'>Удалить запись<br>";
echo"<input type='submit' value='OK'>";
echo"<hr>";
$zapros="SELECT * FROM `bort`";
bort_out($zapros,'id','bort_id'); }
//Вывод таблицы day-----------------------------------------------------------------------if ($_POST['tbl']=='day'){
echo"<hr>";
echo"Выберите действие:";
echo"<br><form method='POST'
action='oper_db.php'>";
echo"<input type='radio' name='act_day'
value='add_day'>Добавить запись<br>";
echo"<input type='radio' name='act_day'
value='del_day'>Удалить запись<br>";
echo"<input type='submit' value='OK'>";
echo"<hr>";
$zapros="SELECT * FROM `day`";
day_out($zapros,'id','day_id');
}
}
//------------------------------------------------------------------------------------------------//------------------------------Создание форм для
добавления и удаления записей в таблицах---------//------------------------------------------------------------------------------------------------if(isset($_POST['act_bort'])){
if($_POST['act_bort']=='add_bort'){
echo"<p><form method='POST' action='oper_db.php'>";
echo"<hr>";
echo"<p>Введите новый тип
самолета:<br><input type='text' name='new_bort'><br>";
echo"<input type='submit'
value='Добавить'>";
echo"</form>";
29
$zapros="SELECT * FROM `bort`";
bort_out($zapros,'id','bort_id');}
if($_POST['act_bort']=='del_bort'){
echo"<p><form method='POST'
action='oper_db.php'>";
echo"<hr>";
echo"<p>Введите ID типа самолета, который необходимо
удалить:<br><input type='text' name='rem_bort'><br>";
echo"<input type='submit' value='Удалить'>";
echo"</form>";
echo"<hr>";
$zapros="SELECT * FROM `bort`";
bort_out($zapros,'id','bort_id','cost'); }
}
//------------------------------------------------------------------------------------------------if(isset($_POST['act_airport'])){
if($_POST['act_airport']=='add_airport'){
echo"<p><form method='POST' action='oper_db.php'
align='left'>";
if
(!mysql_connect("localhost","mag2010","sqrt")){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
mysql_select_db("mag2010-4363");
$result = mysql_query("SELECT * FROM
`day`");
$kolstr=mysql_num_rows($result);
echo"<hr>";
echo"&nbsp Выберите день недели:&nbsp&nbsp";
echo("<select name='sel_day' size=1>");
$i=0;
while ($i<$kolstr){
$var=mysql_fetch_array($result);
echo("<option
value=$var[id]>".$var[day_id]."</option>");
$i++;}
echo"</select><br>";
30
$result = mysql_query("SELECT * FROM
`bort`");
$kolstr=mysql_num_rows($result);
echo"&nbsp Выберите тип самолета:";
echo("<select name='sel_bort' size=1>");
$i=0;
while ($i<$kolstr){
$var=mysql_fetch_array($result);
echo("<option
value=$var[id]>".$var[bort_id]."</option>");
$i++;}
echo"</select><br>";
$result = mysql_query("SELECT * FROM `airport_dep`");
$kolstr=mysql_num_rows($result);
echo"&nbsp Выберите пункт отправления:";
echo("<select name='punkt_dep' size=1>");
$i=0;
while ($i<$kolstr){
$var=mysql_fetch_array($result);
echo("<option
value=$var[id]>".$var[airport_dep]."</option>");
$i++;}
echo"</select><br>";
$result = mysql_query("SELECT * FROM `airport_arr`");
$kolstr=mysql_num_rows($result);
echo"&nbsp Выберите пункт
прибытия:&nbsp&nbsp&nbsp&nbsp&nbsp";
echo("<select name='punkt_arr' size=1>");
$i=0;
while ($i<$kolstr){
$var=mysql_fetch_array($result);
echo("<option
value=$var[id]>".$var[airport_arr]."</option>");
$i++;}
echo"</select><br>";
echo"&nbsp Введите время вылета (в формате
00:00:00):&nbsp&nbsp<input type='text'
name='new_departure'><br>";
echo"&nbsp Введите время прилета (в формате
00:00:00):<input type='text' name='new_arrival'><br>";
31
echo"&nbsp Введите цену
билета:&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp
&nbsp&nbsp&nbsp&nbsp&nbsp<input type='text'
name='new_cost'><br>";
echo"<input type='submit'
value='Добавить'>";
echo"</form>";
echo"<hr>";
$zapros="SELECT `day`.`day_id` , `bort`.`bort_id` ,
`airport_dep`.`airport_dep` , `airport_arr`.`airport_arr`
, `airport`.`departure` , `airport`.`arrival` ,
`airport`.`cost` , `airport`.`id`
FROM `airport` , `day` , `bort` , `airport_dep` ,
`airport_arr`
WHERE `airport`.`day_id` = `day`.`id`
AND `airport`.`bort_id` = `bort`.`id`
AND `airport`.`airport_arr_id` = `airport_dep`.`id`
AND `airport`.`airport_dep_id` = `airport_arr`.`id`";
airport_out($zapros,'id','day_id','bort_id','airport_
dep','airport_arr','departure','arrival','cost');
}
if($_POST['act_airport']=='del_airport'){
echo"<p><form method='POST'
action='oper_db.php'>";
echo"<hr>";
echo"<p>Введите ID строки, которую необходимо
удалить:<br><input type='text' name='rem_airport'><br>";
echo"<input type='submit' value='Удалить'>";
echo"</form>";
echo"<hr>";
$zapros="SELECT `day`.`day_id` , `bort`.`bort_id` ,
`airport_dep`.`airport_dep` , `airport_arr`.`airport_arr`
, `airport`.`departure` , `airport`.`arrival` ,
`airport`.`cost` , `airport`.`id`
FROM `airport` , `day` , `bort` , `airport_dep` ,
`airport_arr`
WHERE `airport`.`day_id` = `day`.`id`
AND `airport`.`bort_id` = `bort`.`id`
AND `airport`.`airport_arr_id` = `airport_dep`.`id`
AND `airport`.`airport_dep_id` = `airport_arr`.`id`";
32
airport_out($zapros,'id','day_id','bort_id','airport_
dep','airport_arr','departure','arrival','cost');
}
}
//------------------------------------------------------------------------------------------------//------------------------------Добавления записей в
таблицы БД------------------------------------if(isset($_POST['new_bort'])){
if(!mysql_connect("localhost","mag2010","sqrt")){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
mysql_select_db("mag2010-4363");
mysql_query("INSERT INTO `bort` (`id`,
`bort_id`) VALUES ('','$_POST[new_bort]')");
mysql_close();}
//------------------------------------------------------------------------------------------------if(isset($_POST['sel_bort'])){
if(!mysql_connect("localhost","mag2010","sqrt")){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
mysql_select_db("mag2010-4363");
mysql_query("INSERT INTO `airport`
(`id`,`day_id`,`bort_id`,`departure`,`arrival`,`cost`,`ai
rport_arr_id`,`airport_dep_id`) VALUES
('','$_POST[sel_day]','$_POST[sel_bort]','$_POST[new_depa
rture]','$_POST[new_arrival]','$_POST[new_cost]','$_POST[
punkt_dep]','$_POST[punkt_arr]')");
mysql_close();
}
//------------------------------------------------------------------------------------------------//------------------------------Удаление записей из
таблицы БД-------------------------------------//------------------------------------------------------------------------------------------------33
if(isset($_POST['rem_airport'])){
if(!mysql_connect("localhost","mag2010","sqrt")){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
mysql_select_db("mag2010-4363");
mysql_query("DELETE FROM `airport` WHERE
`id`='$_POST[rem_airport]'");
mysql_close();}
//------------------------------------------------------------------------------------------------if(isset($_POST['rem_bort'])){
if(!mysql_connect("localhost","mag2010","sqrt")){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
mysql_select_db("mag2010-4363");
mysql_query("DELETE FROM `bort` WHERE
`id`='$_POST[rem_bort]'");
mysql_close();}
//------------------------------------------------------------------------------------------------if(isset($_POST['rem_day'])){
if(!mysql_connect("localhost","mag2010","sqrt")){
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;}
mysql_select_db("mag2010-4363");
mysql_query("DELETE FROM `day` WHERE
`id`='$_POST[rem_day]'");
mysql_close();}
//------------------------------------------------------------------------------------------------echo"<p><A HREF='../index.htm'>Вернуться на страницу
регистрации</A>";
echo"<hr>";
?>
Файл admin_user.php:
<?php
34
//----------------------------------------------------------------------------------function out($z,$a,$b,$c,$p1,$p2,$p3) {
$host = "localhost";
$user = "mag2010";
$password = "sqrt";
$db="mag2010-4363";
if (!mysql_connect($host, $user, $password))
{
echo "<h2>Ошибка при подключении к
MySQL!</h2>";
exit;
}
// Выбираем базу данных:
mysql_select_db($db);
// Выводим заголовок таблицы:
echo "<table align='center' border=\"1\"
width=\"80%\" bgcolor=\"#FFFFE1\">";
echo
"<tr><td>'$a'</td><td>'$b'</td><td>'$c'</td></tr>";
// SQL-запрос:
$q = mysql_query($z);
// Выводим таблицу:
for ($c=0; $c<mysql_num_rows($q); $c++)
{
$f = mysql_fetch_array($q);
echo
"<tr><td>$f[$p1]</td><td>$f[$p2]</td><td>$f[$p3]</td></tr
>";
}
echo "</table>";
mysql_close();
};
//----------------------------------------------------------------------------------$fl_1=0;
$fl_2=0;
SESSION_START();
if(!array_key_exists("login",$_SESSION))
die('Пройдите <a
href="../index.htm">авторизацию</a>');
//----------------------------------------------------------------------------------$zapros="SELECT `login`.`login`,`login`.`pass`,
`type_user`.`type_user`
35
FROM `login`,`type_user`
WHERE `login`.`id_type`
=`type_user`.`id`";
//----------------------------------------------------------------------------------echo '
<style type="text/css">
<!-body {
background-color: #FEF7C0;
}
-->
</style>
';
echo"<h4 align='left'>Вы зашли как администратор:
$_SESSION[login] </h4><hr>";
$result=out($zapros,'Логин','Пароль','Тип учетной
записи','login','pass','type_user');
echo"<p><form method='POST'
action='admin_user.php'>";
echo"<table align='center' width=\"80%\" >";
echo"<input type='radio' name='act'
value='add_usr'>Добавить пользователя<br>";
echo"<input type='radio' name='act'
value='del_usr'>Удалить пользователя<br>";
echo"<input type='submit'
value='ОК'>";
echo"</form>";
echo"<table><br><hr>";
//----------------------------------------------------------------------------------if (isset($_POST['act'])){
if ($_POST['act']=='add_usr'){
echo"<p><form method='POST'
action='admin_user.php'>";
//
value=1>";
echo"<input type=hidden name=fl_1
36
echo"<p>Введите имя
пользователя:<br><input type='text'
name='add_login'><br>";
echo"Введите пароль
пользователя:<br><input type='password'
name='add_pass'><br>";
if
(!mysql_connect("localhost","mag2010","sqrt"))
{
echo "<h2>Ошибка при
подключении к MySQL!</h2>";
exit;
}
mysql_select_db("mag2010-4363");
$result = mysql_query("SELECT
`type_user`.`id`,`type_user`.`type_user`
FROM `type_user`
LIMIT 0 , 30");
mysql_close();
$kolstr=mysql_num_rows($result);
echo"Выберите тип учетной записи:";
echo("<br><select name='sel_add'
size=1>");
$i=0;
while ($i<$kolstr){
$var=mysql_fetch_array($result);
echo("<option
value=$var[id]>".$var[type_user]."</option>");
$i++;
}
echo"</select><br>";
echo"<input type='submit'
value='Добавить'>";
echo"<hr>";
echo"</form>";
}
if ($_POST['act']=='del_usr'){
echo"<p><form method='POST'
action='admin_user.php'>";
//
echo"<input type=hidden name=fl_2
value=1>";
37
echo"<p>Введите login пользователя
которого необходимо удалить:<br><input type='text'
name='del_login'><br>";
echo"<input type='submit'
value='Удалить'>";
echo"</form>";echo"<hr>";
}
}
if
(isset($_POST['add_login'],$_POST['add_pass'])){
if(!mysql_connect("localhost","mag2010","sqrt"))
{
echo "<h2>Ошибка при
подключении к MySQL!</h2>";
exit;
}
mysql_select_db("mag2010-4363");
mysql_query("INSERT INTO `login`
(`login`, `pass`, `id_type`)
VALUES
('$_POST[add_login]','$_POST[add_pass]','$_POST[sel_add]'
)");
mysql_close();
}
if (isset($_POST['del_login'])){
if($_POST['del_login']=="admin")
{
echo "<h2>Удалить данного
пользователя невозможно!!!</h2>";
exit;
}
if(!mysql_connect("localhost","mag2010","sqrt"))
{
echo "<h2>Ошибка при
подключении к MySQL!</h2>";
exit;
}
mysql_select_db("mag2010-4363");
mysql_query("DELETE FROM `login` WHERE
`login` = '$_POST[del_login]';");
mysql_close();
38
}
echo"<br>";
echo"Для отображения изменений обновите страницу.
<A HREF='admin_user.php'> <h4>Обновить
страницу...</h4></A>";
echo"<br><A HREF='../index.htm'>Вернуться на
страницу регистрации</A><hr>";
?>
Экранные формы реализованного проекта
На рис. 1 представлена экранная форма index.htm, где пользователь вводит
логин и пароль доступа. Для входа в качестве администратора ‘admin’, а в
качестве пароля ’admin’.
Рисунок 1. Экранная форма index.htm
39
На рис. 2 представлена экранная форма admin_user.php. При помощи этого
скрипта администратор может удалять и добавлять пользователей.
Рисунок 2. Экранная форма admin_user.php
40
На рис. 3 представлена экранная форма oper_db.php. При помощи этой формы
оператор может выбирать таблицу для редактирования, добавлять и удалять
строки в выбранной таблице.
Рисунок 3. Экранная форма oper_db.php
41
На рис. 4 представлена экранная форма form_user.php. При помощи этой
формы пользователь выбирает параметры рейса.
Рисунок 4. Экранная форма form_user.php
42
На рис. 5 представлена экранная форма user.php. При помощи этой формы
пользователь может выбрать рейс с подходящими параметрами и отправить
билет в корзину.
Рисунок 5. Экранная форма user.php
43
На рис. 6 представлена экранная форма buy.php. При помощи этой формы
пользователь может просмотреть, выбранные им заказы, и удалить ненужные.
Рисунок 6. Экранная форма buy.php
44
На рис. 7 представлена экранная форма manager.php. При помощи этой формы
менеджер может выбрать пользователя и просмотреть его корзину.
Рисунок 7. Экранная форма manager.php
45
На рис. 8 представлена экранная форма manager_del.php. При помощи этой
формы менеджер может ужалить билет из корзины пользователя.
Рисунок 8. Экранная форма manager_del.php.
46
ВЫВОДЫ
В результате выполнения лабораторной работы были изучены принципы
составления SQL запросов. Принципы работы с сессиями. Принципы создание
многопользовательских интернет-приложений.
Было создано многопользовательское приложение, содержащее четыре
типа учетных записей: пользователь, менеджер, оператор базы данных и
администратор. Учетная запись пользователя позволяет выбирать параметры
рейса: время вылета и день недели и отправлять заказ менеджеру. Учетная
запись менеджера позволяет при исполнении заказа может удалить билет из
корзины пользователя. Учетная запись оператора базы данных позволяет
вносить информацию в расписание, а также добавлять новые типы самолетов.
Учетная запись администратора позволяет добавлять новые учетные записи
пользователей, менеджеров, операторов и администраторов системы.
Первой страницей приложения является форма для ввода логина и пароля.
Далее данные с формы отправляются скрипту avtoriz.php, который, в
зависимости от имени и прав доступа пользователя, направляет его на нужную
страницу.
47
СПИСОК ЛИТЕРАТУРЫ
1. Разработка распределенных интерактивных приложений на базе
Интернет-технологий: Лабораторный практикум по дисциплине
«Основы Интернет технологий» Часть 5 / Уфимск. гос. авиац. техн.
ун-т; Сост. Ш.М. Минасов. – Уфа, 2007. – 21 с.
2. РНР: настольная книга программиста /Александр Мазуркевич, Дмитрий
Еловой. – Мн.: Новое знание, 2003. – 480 с.: ил.
3. Разработка Web-приложений на РНР и MySQL: Пер. с англ./Лаура
Томсон, Люк Веллинг. – 2-е изд., испр. – СПб: ООО «ДиаСофтЮП»,
2003. – 672 с.
48
Download