Отчет по лабораторной работе №4

advertisement
Министерство образования и науки Российской Федерации
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
Уфимский государственный авиационный технический университет
Кафедра информатики
ОТЧЕТ
ПО ЛАБОРАТОРНОЙ РАБОТЕ №4
по дисциплине:
«Обработка информации в системах реального времени»
на тему:
«Функции в PHP»
Выполнил:
студентка гр. МС-502в
Чувашова Ю.В.
Проверил:
канд.техн.наук, доцент
Минасов Ш. М.
Уфа 2012
ОГЛАВЛЕНИЕ
Цель работы ................................................................................................................. 3
1.Ход выполнения работы ........................................ Error! Bookmark not defined.
2.Индивидуальное задание ......................................................................................... 3
2.1.Постановка задачи............................................................................................. 3
2.2.Выполнение задания ......................................................................................... 3
Выводы ......................................................................................................................... 8
Список литературы ..................................................................................................... 9
2
ЦЕЛЬ РАБОТЫ
Целью лабораторной работы является изучение технологии создания, а
так же особенностей передачи аргументов пользовательских функций в PHP.
1.
ИНДИВИДУАЛЬНОЕ ЗАДАНИЕ
1.1.
Постановка задачи
Для приложения разработанного в соответствии с заданием для
самостоятельной работы в рамках Лабораторной работы №3, выделить
фрагменты кода используемого для анализа рассматриваемых критериев и
оформить их в виде функций.
1.2.
Выполнение задания
На рис. 1 представлена экранная форма главной страницы index.htm.
Рисунок 1 - Экранная форма главной страницы index.htm
3
Вид главной страницы после авторизации под правами администратора
представлен на рис. 2
Рисунок 2 - Вид страницы admin.php после успешной авторизации
Программный код главной страницы (файл «admin.php»)
<?php
include "func.php";
auth("admin")
?>
<HTML>
<HEAD>
<TITLE>каталог женской одежды и обуви</TITLE>
<META NAME="Author" CONTENT="Чувашова Ю.В."/>
</HEAD>
<BODY bgcolor=F0E68C background="../fon.jpg">
<H1 align="center"><font color="8A2BE2">Добро пожаловать в каталог
женской одежды и обуви</font></H1>
<table align="center">
<tr>
<td><BR></td>
</tr>
</table>
<table align="left">
<tr>
<td align="left"><a HREF="../index.htm">Главная страница</a>
</tr>
4
<tr>
<td align="left"><a HREF="../rezume.htm">Резюме</a>
</tr>
<tr>
<td align="left"><a HREF="../foto.htm">Фотогалерея</a>
</tr>
<tr>
<td align="left"><a HREF="../ot4et.htm">Отчеты по
лабораторным работам</a>
</tr>
</table>
<table align="center">
<tr>
<td><b><BR></td>
</tr>
</table>
<table align="left">
<tr>
<td>
<button type="button" onClick='location.href="add.php"'><font
color="8A2BE2">Новое поступление</font></button>
</td>
</tr>
</table>
<BR CLEAR=ALL>
<form method="post" action="delete.php">
<table align="center" border=1 bordercolor="8A2BE2">
<tr>
<td width="300" align="center"><b><font
color="FAF0E6">Тип</font></b></td>
<td width="300" align="center"><b><font
color="FAF0E6">Бренд</font></b></td>
<td width="300" align="center"><b><font
color="FAF0E6">Цена</font></b></td>
<td width="300" align="center"><b><font
color="FAF0E6">Миниатюра</font></b></td>
</tr>
<?php
include "data.inc";
for($i = 0; $i < count($type_arr); $i++)
{
echo "<tr>";
echo "<td width=\"300\"
align=\"center\">".$type_arr[$i]."<br>
<button type=\"submit\" name=\"".$i."\"><font
color=\"006400\">Удалить</font></button>
<button type=\"submit\" name=\"change".$i."\"><font
5
color=\"006400\">Изменить</font></button>
</td>";
echo "<td width=\"300\"
align=\"center\">".$brend_arr[$i]."</td>";
echo "<td width=\"300\"
align=\"center\">".$price_arr[$i]."</td>";
echo "<td width=\"300\" align=\"center\"><a
HREF=\"foto_gallery/".$file_name_arr[$i]."\"><IMG
src=\"foto_gallery/preview/".$file_name_min_arr[$i]."\"/></a></td>
";
echo "</tr>";
}
?>
</table>
</form>
</BODY>
</HTML>
Авторизация пользователей выполнена в виде отдельной функции auth() и
вынесена в отдельный скрипт «func.php»
<?php
function auth($mode)
{
$admin_arr = file("admins.txt");
$user_arr = file("users.txt");
$prodavec_arr = file("prodavec.txt");
if (!$admin_arr | !$user_arr | !$prodavec_arr)
{
exit ("Одного из файлов с логинами и паролями
пользователей не существует<br>");
}
else if ((count($admin_arr)%2 != 0) | (count($user_arr)%2 !=
0) | (count($prodavec_arr)%2 != 0))
{
exit ("Количество логинов в одном из файлов не совпадает
с количеством паролей<br>");
}
else
{
SESSION_START();
if($mode=="admin")
{
for($i=0; $i < count($admin_arr)-1; $i+=2)//цикл по
логинам в файле
if (($_SESSION["login"] !=
trim($admin_arr[$i])) | ($_SESSION["pass"] !=
6
trim($admin_arr[$i+1])))
exit ("Пройдите <a
HREF=\"index.htm\">авторизацию</a>");
}
elseif($mode=="user")
{
for($i=0; $i < count($user_arr)-1; $i+=2)//цикл по
логинам в файле
if (($_SESSION["login"] !=
trim($user_arr[$i])) | ($_SESSION["pass"] !=
trim($user_arr[$i+1])))
exit ("Пройдите <a
HREF=\"index.htm\">авторизацию</a>");
}
elseif($mode=="prodavec")
{
for($i=0; $i < count($prodavec_arr)-1; $i+=2)//цикл
по логинам в файле
if (($_SESSION["login"] !=
trim($prodavec_arr[$i])) | ($_SESSION["pass"] !=
trim($prodavec_arr[$i+1])))
exit ("Пройдите <a
HREF=\"index.htm\">авторизацию</a>");
}
}
}
?>
Система
поддерживает
3
группы
пользователей:
администраторы
(полный доступ), продавцы (добавление новых поступлений товара и
изменение его описания) и пользователи (просмотр и сортировка по нужному
полю).
Логины и пароли на вход хранятся в текстовых файлах на сервере:
admins.txt
Администраторы
users.txt
Пользователи
prodavec.txt
Продавцы
Формат любого из этих файлов следующий:
Логин1
Пароль1
Логин2
Пароль2
7
ВЫВОДЫ
В результате выполнения лабораторной работы мы изучили технологию
создания, а так же особенности передачи аргументов пользовательских
функций в PHP.
8
СПИСОК ЛИТЕРАТУРЫ
1. Разработка распределенных интерактивных приложений на базе
Интернет - технологий: Лабораторный практикум по дисциплине
«Основы Интернет технологий» Часть 1 / Уфимск. гос. авиац. техн. ун-т;
Сост. Ш.М. Минасов. – Уфа, 2007. – 15 с.
2. Скотт Хокинс. Администрирование Web-сервера Apache и руководство
по электронной коммерции, – М.:Вильямс, 2001. – 336 с.
3. Гончаров А.С. Самоучитель HTML. – СПб.: Питер, 2002. – 240 с.: ил.
4. Петюшкин А.В. HTML. Экспресс-курс. – СПб.: БХВ-Петербург, 2003. –
256 с.: ил.
5. Разработка Web-приложений на РНР и MySQL: Пер. с англ./Лаура
Томсон Люк Веллинг. – 2-е изд., испр. – СПб: ООО «ДиаСофтЮП», 2003.
– 672 с.
9
Download