- •Технология организации баз данных и знаний
- •Методические указания к выполнению лабораторных работ
- •Методические указания к выполнению лабораторных работ
- •Предисловие
- •Библиографический список
- •Лабораторная работа № 1 Тема №1. ИнсталляцияMySqLи создание локального сервера
- •1. Цель работы
- •2. Основные технические возможности
- •3. Описание установки
- •4. Порядок выполнения работы
- •5. Содержание отчета
- •Лабораторная работа № 1
- •6. Содержание отчета
- •Лабораторная работа № 2 Тема №1. Создание баз и таблиц данных
- •1. Цель работы
- •2. Основные сведения
- •3. Программа работы
- •4. Указания к выполнению работы
- •3. Программа работы
- •00 Проверка моего домена с именем Moy.Loc
- •4. Указания к выполнению работы
- •5. Содержание отчета
- •3. Указания к выполнению работы
- •Задание 2: Разработать html-форму с методом Post
- •Тема №2. Передача значений переменным в сценариях php. Использование возможностей метода get без html-формы для передачи значений переменных в сценариях php
- •Тема №3. Создание формы и рнр-сценария в одном файле
- •Задание 1: Получение данных из текстового поля
- •I курсив
- •Тема №4. Использование чисел. Управляющие структуры
- •Тема №5. Использование управляющей структурыswitch
- •Тема № 6. Использование регулярных выражений в сценариях рнр
- •Проверка ошибок
- •Задание 1. Вывод информации о ошибочно заполненных полях формы
- •Задание 2. Использование функций пользователя для контроля полей формы
- •Задание 3. Проверка ограничений в текстовом поле.Lab6_0_2.Php
- •Задание 4. Специфика имени пользователя. Lab6_0_3.Php
- •Задание 5. Специфика имени пользователя с помощью JavaScript. Lab6_0_4.Php
- •Тема №7. Работа с массивами
- •Задание 1. Означивание массива и вывод на экран. Lab7_0.Php.
- •Задание 4. Сортировка массива.Lab7_3.Php.
- •Тема №8. Функции в сценариях рнр
- •Задание 1. Вложенные функции.Lab8_0_0.Php
- •Задание 2. Объявление функций внутри других функций.Lab8_0.Php
- •Задание 3. Возврат значений функцией.Lab8_1.Php
- •Задание 4. Возврат нескольких значений функцией.Lab8_2.Php
- •Задание 5. Возвращение функцией нескольких величин.Lab8_3.Php
- •Задание 6. Рекурсивные функции .Lab8_4.Php
- •Задание 7. Функции-переменные.Lab8_5.Php
- •Задание 8. Построение библиотек функций.Lab8_6_0.Php.
- •Задание 9. Построение шаблона сайта.Lab8_7_0.Php.
- •Тема №9. Использование файлов для хранения данных в сценариях рнр
- •Создание сценария загрузки.
- •Задание 3. Сохранение пользовательских данных в текстовом файлеLab9_5.Php
- •Задание 4. Сохранение пользовательских данных в текстовом файлеLab9_6_0.Php
- •Тема № 10. Работа с каталогами в сценариях рнр
- •Тема №11. Создание панели управления файлами
- •Задание 1. Разработать форму и сопутствующее ей приложение для панели управления файлами.
- •Тема № 12.Работа с базой через монтторMySql и PhpMyAdmin
- •Задание 1. Создать базу данных через командную строку
- •Задание 3. Вставка данных в базу данных
- •Задание 4. Создание командных файлов и файлов сценариев для вставки данных в базу данных.
- •Тема № 13. Извлечение данных из базы данных
- •Задание 1. Оператор выборки данныхSelect
- •Задание 2. Извлечение данных по определенному критерию
- •Задание 3. Извлечение данных из нескольких таблиц
- •Задание 4. Поиск несоответствующих строк
- •Задание 5. Использование псевдонимов имен таблиц (as)
- •Задание 6. Извлечение данных в определенном порядке
- •Задание 7. Группировка и агрегирование данных
- •Задание 8. Обновление записей в базе данных (update)
- •Задание 10. Удаление записей, таблиц и базы данных (delete)
- •Тема № 14.Php и MySql. Доступ к базе данных MySql из Web с помощью рнр
- •Задание 1. Изучение работы архитектуры Web-баз данных
- •Задание 2. Проверка и фильтрация данных, исходящих от пользователя. Использование объектно-ориентированного синтаксисаPhp
- •Задание 3. Внесение новой информации в базу данных. Проверка и фильтрация данных, исходящих от администратора
- •Задание 4. Создание и удаление баз данных
- •Содержание
Тема №11. Создание панели управления файлами
Цель работы: Получение практических навыков по обработке файлов в сценариях.
Задание 1. Разработать форму и сопутствующее ей приложение для панели управления файлами.
Пример формы показан на рис. 3.159, ее обработчик приведен на рис. 3.161 (имя сценария - Lab11.php ). Вариант работы обработчика формы показан на рис. 3.160.
Рис. 3.159. Форма панели управления файлами
Рис. 3.160. Результат работы кода lab11.php
Листинг создания и обработки формы lab11.php.
html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Lab11 Files manager</title>
</head>
<body>
<table border=0 width=80% align=center>
<?PHP
if ($_POST["Upload"])
{
$dir = "W:\home\localhost\www\php\Lab\users";
echo("Upload File=".$File);
print("<tr><td colspan=4 align=center>Uploaded file: $File_name</td></tr>");
print("<tr><td colspan=4 align=center>File size: $File_size</td></tr>");
//if (copy($File,"USERS/$File_name"))
if (copy($File,$dir."/$File_name"))
{
print("<tr><td colspan=4 align=center>Your file:$File_name, successfully uploaded</td></tr>");
}
else
{
print("Upload was not success");
}
//unlink($File);
unlink($Files);//unlink - удаляет файл.
print("<tr><td colspan=4> </td></tr>");
}
if ($Delete)
{
for($i=0;$i<count($Delete);$i++)
{
if ($Delete[$i]==$Rename[$i])
{ print("<center>It is impossible to delete and rename file in the same time</center>");}
else
{
//if (unlink("USERS/$Delete[$i]"))
if (unlink($dir."/$Delete[$i]"))
{
print("<tr><td colspan=4 align=center> Your file, $Delete[$i],was deleted</td></tr>");
}
else
{
print("<tr><td colspan=4 align=center> Your file, $Delete[$i], cannot be deleted</td></tr>");
}
}
}
print("<tr><td colspan=4 align=center> </td></tr>");
}
if ($Rename)
{
for($i=0;$i<count($Rename);$i++)
{
if ($Delete[$i]==$Rename[$i])
{}
else
{
//$OldName="USERS/".$Rename[$i];
$OldName=$dir."/".$Rename[$i];
$Newfile=$Rename[$i];
//$New="USERS/".$NewName[$Newfile];
$New=$dir."/".$NewName[$Newfile];
if (rename("$OldName","$New"))
{
print("<tr><td colspan=4 align=center> Your file, $Rename[$i], was renamed in $NewName[$Newfile]</td></tr>");
}
else
{
print("<tr><td colspan=4 align=center> Your file, $Rename[$i], cannot be renamed</td></tr>");
}
}
}
print("<tr><td colspan=4 align=center> </td></tr>");
}
print("<form action=\"lab11.php\" method=post enctype=\"multipart/form-data\">\n");
print("<tr><td><b>File name</b></td>
<td><b>File size</b></td>
<td><b>Delete</b></td>
<td><b>Rename (Укажите новое имя)</b></td></tr>");
//if ($dir = @opendir("W:\home\localhost\www\php\Lab\users"))
$dir = "W:\home\localhost\www\php\Lab\users";
//$Open=opendir("USERS");//функция PHP
$Open=opendir($dir);//функция PHP
while ($Files=readdir($Open))
{
//$FileName="USERS/".$Files;
$FileName=$dir."/".$Files;
if (is_file($FileName))
{
$Size=filesize($FileName);
print("<tr><td>$Files</td>
<td>$Size</td>
<td><input type=checkbox name=\"Delete[]\" value=\"$Files\"</td>
<td><input type=checkbox name=\"Rename[]\" value=\"$Files\">
<input type=text name=\"NewName[$Files]\"></td></tr>\n");
}
}
closedir($Open);
print("<tr><td colspan=4 align=center> </td></tr>");
print("<tr><td colspan=4 align=center>
<input type=checkbox name=\"Upload\" value=\"yes\">Upload file<br>
<input type=file name=\"File\" size=40><br>
<input type=submit name=\"Submit\" value=\"Ok\"></td></tr>");
print("</form>");
?>
</table>
</body>
</html>
Рис. 3.161. Код lab11.php для реализации менеджера файлов