ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 17.04.2024
Просмотров: 58
Скачиваний: 0
СОДЕРЖАНИЕ
Завдання для самостійного виконання:
Завдання для самостійного виконання:
Практична робота №3 тема: Синтаксис рнр. Використання операцій та операторів
Завдання для самостійного виконання:
Завдання для самостійного виконання:
Завдання для самостійного виконання:
Практична робота №6 тема: Робота з масивами
Завдання для самостійного виконання:
Практична робота №7 тема: Робота з функціями.
Завдання для самостійного виконання:
Практична робота №8 тема: Взаємодія з файловою системою
Завдання для самостійного виконання:
Практична робота №9 тема Об’єктно-орієнтоване програмування на рнр
Завдання для самостійного виконання:
Практична робота № 10 тема: Взаємодія рнр-сценаріїв з базами даних
Завдання для самостійного виконання:
Практична робота № 11 тема: Робота з зображеннями
Завдання для самостійного виконання:
Практична робота № 12 тема: Використання регулярних виразів
Завдання для самостійного виконання:
Практична робота № 13 тема: Керування сеансами
<html> <head> <title>данные по заказам</title> </head> <?php $db = mysql_connect("localhost","user","1"); $a=mysql_select_db("auto",$db); if ($a) {echo "";} else {echo "error!";} echo "<h3>Информация по всем заказам </h3>"; $ggg="SELECT * FROM avto"; $result = mysql_query ($ggg,$db); if ($result) {echo "";} else {echo "error!";} echo "<table border=2>"; $p=1; while ($myrow = mysql_fetch_array($result,MYSQL_ASSOC)) { if ($p == 1) { echo"<tr>"; foreach ($myrow as $ind => $buf){echo "<td>$ind</td>";} // выводим названия столбцов echo"</tr>"; $p=2; // присваиваем переменной $p двойку, чтоб при следующей итерации цикла while не выводились названия столбцов $ind } echo "<tr>"; foreach ($myrow as $buf) {echo "<td> $buf </td>"; } echo "</tr>"; } echo "</table>"; ?> <body> </body> </html>
Результат виконання представлений на малюнку 10.4.
Малюнок 10.4 – Зовнішній вигляд таблиці бази даних автомобілів
5 Для того, щоб заповнити таблицю, скористайтеся прикладом коду, описаним вище, у якому змініть mysql_query("SELECT * FROM avto", $db); на mysql_query ("INSERT INTO avto (key,marka,year,color,kuzov,cost,dodatok) VALUES ('1','BMW','2007','grey','sedan','30000','electro');",$db);
Завдання для самостійного виконання:
6 Зробіть вибірку з бази за автомобілями одієї марки.
7 Потім одночасно за двома полями: одного року випусу і одного кольору.
8 Замініть усі типи кузовів на седан.
9 Усім автомобілям 2008 року випуску замініть колір на зелений.
10 Створіть за допомогою HTML форму вводу за даними про автомобілі та зв’яжіть її з базою даних.
Введіть за допомогою цієї форми дані щодо декількох нових моделей автомобілів.
Практична робота № 11 тема: Робота з зображеннями
МЕТА – познайомитися з основами роботи із зображеннями в РНР
Порядок виконання завдання:
1 За допомогою функції imageLine побудуйте суцільну пряму лінію
2 За допомогою функції imageArc намалюйте частину еліпса.
int imageArc(int im, int cx, int cy, int w, int h, int s, int e, int color)
Ця функція малює в зображенні im дугу сектора еліпса від кута s до е (кути вказуються у градусах проти годинникової стрілки). Еліпс малюється такого розміру, щоб вписатися у прямокутник (w, h), де w та h задають його ширину та висоту. cx та cy – координати центру еліпса. Сама фігура не замальовується, обводиться лише її контур, для чого використовується color.
3 За допомогою функції imagePolygon намалюйте багатокутник із заданими вершинами.
Завдання для самостійного виконання:
4 За допомогою функції imageDashedLine намалюйте пунктирну лінію.
5 За допомогою функції imageFilledRectangle намалюйте зафарбований прямокутник.
Практична робота № 12 тема: Використання регулярних виразів
МЕТА – познайомитися з основами використання регулярних виразів в РНР
Порядок виконання завдання:
1. Для роботи із регулярними виразами в РНР підтримується два стилі синтаксису регулярних виразів POSIХ і Perl. Стиль POSIХ компілюється в РНР за замовчуванням.
2. У РНР співставлення регулярних виразів подібне до роботи функції strstr(). Нижче наведений перелік регулярних виразів у стилі POSIХ.
3 Запишіть та запустіть на виконання приклад коду, що здйснює пошук підрядків у рядку за допомогою регулярних виразів.
Завдання для самостійного виконання:
3 За допомогою функції пошуку підрядків ereg() в рядку «Жизнь прекрасна и удивительна, однако не так удивительна!» знайдіть підрядок «удивительна» і занесіть знайдене співпадіння у масив. Виведіть на екран рядок та елементи створеного масиву. Збережіть отриманий код.
Прототип функції ereg():
4 Виконайте попередню вправу за допомогою функції eregi(). Збережіть отриманий сценарій. Порівняйте результати роботи обох функцій, проаналізуйте.
5 За допомогою функції заміни підрядків ereg_replace() в рядку «Жизнь прекрасна и удивительна» знайдіть підрядок «удивительна» і замініть його на «ужасна». Виведіть на екран рядок до і після виконання функції. Збережіть отриманий код.
Прототип функції ereg_replace():
6 Розділіть рядок «itp.teleswet.net» на три компоненти та виведіть кожний з них в окремому рядку на екран. Збережіть отриманий код.
Практична робота № 13 тема: Керування сеансами
МЕТА – познайомитися з основами керування сеансами в РНР
Порядок виконання завдання:
1 Напишіть код що виконує обробку трьох сторінок у сеансі. На першій сторінці потрібно запустити сеанс і зареєструвати змінну $sess_var. Код, що дозволяє зробити це, показаний нижче:
<? sessіon_start(); sessіon_regіster("sess_var"); $sess_var = "Hello world!"; echo "The content of \ $sess_var іs $sess_var<br>"; ?> <a href = "page2.php">Next page</a>
Збережіть сценарій у файлі з назвою page1.php.
2 Наступний сценарій починається з виклику sessіon_start(). Збережіть його у файлі page2.php. Код, що дозволяє зробити це наведений далі:
sessіon_start();
echo "The content of \ $sess_var іa $sess_var<br>"
sessіon_unregіster("sess_var");
<a href = "page3.php">Next page</a>
3. Сценарій, що буде завершувати сеанс та знищувати його збережіть у файлі page3.php.
sessіon_start(); echo "The content of \ $sess_var іs $sess_var<br>"; sessіon_destroy() ;
4 Прослідкуйте за станом змінної . $sess_var на всіх етапах. Проаналізуйте результат.
5 У цій вправі потрібно створити лічильник відвідувань сторінки. Для цього застосовується зберігання даних сеансу. Скористайтеся поданим нижче кодом:
Збережіть отриманий сценарій у файлі phpcounter.php. Результат виконання показаний на малюнку 13.1
Малюнок 13.1 – Лічильник відвідувань працює нормально
6 Передайте ідентифікатор сеансу без cookies через приховане поле форми за допомогою наступного коду:
Збережіть отриманий код у файлі phpsessionnocookies.php. Результат виконання представлений на малюнку 13.2
Малюнок 13.2 – Передача ідентифікатора сеансу без cookies
Практична робота № 14 тема: Безпека Web-додатків
МЕТА – познайомитися з основами забезпечення безпеки web-додатків в РНР
Порядок виконання завдання:
1 Розглянемо безпеку Web-додатків на прикладі аутентифікації користувачів Створіть за допомогою блокнота файл secret.php і в ньому запишіть програмний код, поданий нижче:
2 Якщо файл буде завантажений без параметрів, то буде відображено форму із запрошенням ввести ім’я та пароль користувача (мал.14.1)
Малюнок 14.1 – Запрошення на ввод імені та паролю користувача
3 Якщо введені дані не правильні, має відображатися повідомлення про помилку (див. мал. 14.2)
Малюнок 14.2 – Повідомлення про помилку при неправильних параметрів
4. Якщо введені дані правильні - відображається секретна інформація (мал. 14.3)
Малюнок 14.3 – Відображення секретної інформації
5 До файлу із попередньої вправи застосуйте шифрування паролю користувача за допомогою функції crypt(). Для цього замість умови:
if($name= =”user” && $password = = “pass”)
треба описати умову:
if($name = ‘user’ && crypt ($password, ‘xx’) == ‘xxkTimYjlikoII’)
6 Збережіть виконані зміни в іншому файлі. Проаналізуйте результат виконання умови в обох випадках.
7 Більшість серверів (наприклад Apache) дозволяють обмежувати доступ до певних розділів веб-сайту. Шляхом налаштовування доступ отримають лише користувачі, які перераховані в конфігураційному файлі серверу. При спробі доступа до захищеної частини сервера буде відображено діалогове вікно, в якому слід увести ім’я користувача та його пароль, як показано на малюнку 14.4.
Малюнок 14.4 – Діалогове вікно авторизації користувача
8 Створіть сценарій у якому використовується авторизація. Якщо користувач введе ім’я та пароль, його ім’я буде відображено. Якщо ж регістраційне ім’я не буде задано, доступ буде заборонений. Збережіть отриманий код.