TablicaPro
Pobierz PDF

INF.03 · część praktyczna · arkusz ćwiczeniowy nr 4 · wariant PHP

Pizzeria

Czas na wykonanie zadania: 150 minut. Ocenie podlega 5 rezultatów.

Materiał ćwiczeniowy TablicaPro, wzorowany na budowie arkuszy części praktycznej egzaminu INF.03. To autorskie zadanie — nie jest arkuszem opracowanym przez CKE. Rozwiązanie wzorcowe i schemat punktowania: strona rozwiązania (najpierw spróbuj samodzielnie).

Instrukcja

  1. Pobierz archiwum z plikami: arkusz-04-pliki.zip i rozpakuj je.
  2. Na pulpicie utwórz folder o nazwie równej wymyślonemu numerowi zdającego (11 cyfr). Wszystkie wyniki zapisuj w tym folderze.
  3. Zadanie wykonaj samodzielnie, ograniczając się do wiedzy i narzędzi dostępnych na stanowisku egzaminacyjnym.
  4. Po zakończeniu sprawdź, czy w folderze są wszystkie pliki z listy na końcu arkusza.
  5. Oceń własną pracę według schematu na stronie rozwiązania — próg zaliczenia części praktycznej egzaminu wynosi 75% punktów.

Zadanie egzaminacyjne

Numer zdającego (w ćwiczeniu — wymyślony 11-cyfrowy numer) jest nazwą folderu z wynikami i trafia do stopki strony.

Wykonaj stronę zamówień internetowych pizzerii, wykorzystując edytor grafiki rastrowej, pakiet XAMPP oraz edytor zaznaczający składnię.

Operacje na bazie danych

Baza danych zawiera połączone relacją tabele przedstawione na ilustracji 1. Pole wegetarianska w tabeli pizze przyjmuje wartość 1 dla pizz bezmięsnych, pole dostepna — wartość 1 dla pizz aktualnie dostępnych w ofercie, a pole status w tabeli zamowienia — jedną z wartości: nowe lub zrealizowane.

pizze
id 🔑
nazwa
skladniki
cena
wegetarianska
dostepna
zamowienia
id 🔑
pizza_id → pizze.id
klient
ilosc
data_zam
status
Ilustracja 1. Baza danych

Za pomocą narzędzia phpMyAdmin wykonaj następujące operacje na bazie danych:

Grafika

Na potrzeby witryny internetowej przygotuj grafiki:

Witryna internetowa

Układ bloków
Ilustracja 2. Układ bloków (szerokości zaznaczono w procentach szerokości okna)
Wygląd witryny internetowej
Ilustracja 3. Wygląd witryny internetowej (przykładowe dane mogą się różnić)
Efekt działania skryptu
Ilustracja 4. Przykładowy efekt działania skryptów (wysłano zamówienie na dwie pizze Pepperoni i anulowano zamówienie nr 5)

Cechy witryny:

Styl CSS witryny internetowej

Styl CSS zdefiniowany jest w całości w zewnętrznym pliku o nazwie styl.css. Cechy formatowania CSS, działające na stronie:

Uwaga: styl CSS tabeli, komórek tabeli i przycisku należy zdefiniować wyłącznie przy pomocy selektorów tych znaczników. Jest to uwarunkowane projektem późniejszej rozbudowy witryny.

Skrypty połączenia z bazą

W tabeli 1 zamieszczono wybrane funkcje PHP do obsługi bazy danych. Wymagania dotyczące skryptów:

Skrypt 1

Skrypt 2

Skrypt 3, wykonywany tylko wtedy, gdy formularz wysłał dane

Skrypt 4

Tabela 1. Wybór funkcji języka PHP do obsługi bazy MySQL i MariaDB

Funkcje biblioteki mysqliZwracana wartość
mysqli_connect(serwer, użytkownik, hasło, nazwa_bazy)id połączenia lub FALSE, gdy niepowodzenie
mysqli_select_db(id_połączenia, nazwa_bazy)TRUE/FALSE w zależności od stanu operacji
mysqli_error(id_połączenia)tekst komunikatu błędu
mysqli_close(id_połączenia)TRUE/FALSE w zależności od stanu operacji
mysqli_query(id_połączenia, zapytanie)wynik zapytania
mysqli_fetch_row(wynik_zapytania)tablica numeryczna odpowiadająca wierszowi zapytania
mysqli_fetch_array(wynik_zapytania)tablica zawierająca kolejny wiersz wyniku zapytania lub FALSE, jeżeli nie ma więcej wierszy
mysqli_num_rows(wynik_zapytania)liczba wierszy w podanym wyniku zapytania
mysqli_num_fields(wynik_zapytania)liczba kolumn w podanym wyniku zapytania
isset($zmienna)TRUE/FALSE w zależności od tego, czy $zmienna istnieje

Tabela 2. Modyfikacja danych w bazie

Polecenia INSERT, UPDATE i DELETE wysyła się do bazy funkcją mysqli_query(), tak samo jak zapytania SELECT; zamiast zestawu wierszy funkcja zwraca wtedy TRUE lub FALSE. Data bieżąca w SQL: CURDATE(). Wartość liczbową z formularza można zamienić na liczbę całkowitą rzutowaniem (int).

Zawartość folderu na zakończenie

W folderze z numerem zdającego powinny się znajdować pliki: import.png, kw1.png, kw2.png, kw3.png, kw4.png, kw5.png, kw6.png, kwerendy.txt, przeglądarka.txt, styl.css, index.php, pizza.jpg, tlo.jpg, logo.png oraz ewentualnie inne przygotowane pliki.

Ocenie podlegać będzie 5 rezultatów: operacje na bazie danych, zawartość witryny internetowej, działanie witryny internetowej, styl CSS witryny internetowej, skrypt.