Arkusz INF.03 : 2021 - czerwiec - zad. 01 (php)
Oznaczenie: INF.03-01-21.06-SG Limit czasu: 150 minut
Zadanie egzaminacyjne
Wykonaj aplikację internetową restauracji. Wykorzystaj pakiet XAMPP
oraz edytor tekstowy zaznaczający składnię.
Aby wykonać zadanie, zaloguj się na konto Egzamin
bez hasła. Na pulpicie znajdziesz archiwum ZIP o nazwie restauracja.zip
zabezpieczone hasłem: Wykon@jTo
Archiwum należy rozpakować.
Po skończonej pracy wyniki zapisz w folderze utworzonym na pulpicie konta Egzamin
. Jako nazwy folderu użyj swojego numeru PESEL
lub w przypadku jego braku, inny numer, którym został podpisany arkusz. Rozpakowane pliki umieść w tym folderze.
Operacje na bazie danych
Tabele wykorzystane w zadaniu są przedstawione na obrazie 1
. Pole typ
z tabeli dania
odpowiada rodzajom dań: 1 – zupy, 2 – mięsne, 3 – przekąski, 4 – napoje. Pole stanowisko
z tabeli pracownicy
odpowiada stanowiskom: 1 – kucharz, 2 – pomoc, 3 – kelner, 4 – barman.
Obraz 1. Baza danych
Za pomocą narzędzia phpMyAdmin
wykonaj operacje na bazie danych:
- Utwórz nową bazę danych o nazwie
baza
- Zaimportuj do bazy tabele z pliku
baza.sql
, z wcześniej rozpakowanego archiwum. Wykonaj zrzut ekranu po imporcie. Zrzut zapisz w formacie JPEG i nazwijzad1
. Nie kadruj zrzutu. Zrzut powinien obejmować cały ekran, z widocznym paskiem zadań. Na zrzucie powinny być widoczne elementy wskazujące na poprawnie wykonany import tabel. - Zapisz i wykonaj
zapytania SQL
działające na bazie. Wykonaj zrzuty ekranu przedstawiające wyniki działania kwerend. Zrzuty zapisz w formacie JPEG i nadaj im nazwykw1
,kw2
,kw3
,kw4
. Zrzuty powinny obejmować cały ekran monitora z widocznym paskiem zadań. Zapytania zapisz w plikukwerendy.txt
- Zapytanie 1: wstawiające do tabeli
rezerwacje
rekord z danymi: numer stolika =1
, data =„2017-07- 04”
, liczba osób =4
, numer telefonu =„111222333”
, wartość polaid
nadawana jest automatycznie - Zapytanie 2: wybierające z tabeli
dania
jedynie polanazwa
icena
dla dańmięsnych
- Zapytanie 3: wybierające z tabeli
dania
jedynie polenazwa
dla takich przekąsek, którychcena
jest mniejsza od15 zł
- Zapytanie 4: aktualizujące dane w tabeli
pracownicy
. Dla wszystkich pracowników, którzy zatrudnieni są jakokelner
, należy dokonać zmianystanowiska
nabarman
- Zapytanie 1: wstawiające do tabeli
Witryna internetowa
Obraz 2. Witryna internetowa
Wymagania dotyczące witryny:
- Nazwa pliku:
restauracja.html
- Zastosowany język
HTML 5
- Zastosowany właściwy standard kodowania polskich znaków
- Tytuł strony widoczny na karcie przeglądarki: „Restauracja Wszystkie Smaki”
- Arkusz stylów w pliku o nazwie
styl_1.css
prawidłowo połączony z kodem strony - Podział strony na bloki:
baner
, panelelewy
iprawy
,dolny
,stopka
. Podział zrealizowany za pomocą znaczników sekcji tak, aby układ bloków strony po uruchomieniu w przeglądarce, był zgodny zObrazem 2
- Zawartość banera: nagłówek
pierwszego
stopnia o treści: Witamy w restauracji „Wszystkie Smaki” - Zawartość panelu lewego: obraz
menu.jpg
z tekstem alternatywnym o treści: „Nasze danie” - Zawartość panelu prawego:
- Nagłówek
czwartego
stopnia o treści: „U nas dobrze zjesz!” - Lista
numerowana
z trzema elementami: Obiady od 40 zł; Przekąski od 10 zł; Kolacje od 20 zł
- Nagłówek
- Zawartość panelu dolnego:
- Nagłówek
drugiego
stopnia o treści: „Zarezerwuj stolik on-line” - Formularz zgodny z
obrazem 2
, wysyłający dane do plikurezerwacja.php
metodą bezpieczną, zawiera podpisy i pola:- „Data (format rrrr-mm-dd):”, poniżej pole edycyjne
- „Ile osób?”, poniżej pole edycyjne typu numerycznego
- „Twój numer telefonu:”, poniżej pole edycyjne
- Pole wyboru z napisem: „Zgadzam się na przetwarzanie moich danych osobowych”
- Przycisk „WYCZYŚĆ”, po jego wciśnięciu formularz jest czyszczony
- Przycisk „REZERWUJ”, po jego wciśnięciu są wysyłane dane z formularza
- Zawartość stopki: napis o treści: „Stronę internetową opracował: ”, dalej wstawiony Twój
numer PESEL
, lub w przypadku jego braku, inny numer, którym został podpisany arkusz, numer powinien być zapisany pochyloną czcionką
- Nagłówek
Styl CSS witryny internetowej
Plik CSS zawiera formatowanie:
- Całej strony: kolor tła
#F6E5DC
, krój czcionkiVerdana
- Banera: kolor tła
#2F180C
, wyrównanie tekstudo środka
, kolor czcionkikhaki
, wysokość60 px
- Panelu lewego: szerokość
60%
- Panelu prawego: rozmiar czcionki
150%
, marginesy wewnętrzne70 px
- Panelu dolnego: kolor tła
#D0B6A8
, wyrównanie tekstudo środka
, marginesy wewnętrzne30 px
- Stopki: kolor tła
#2F180C
, kolor czcionkikhaki
, wysokość60 px
- Obrazu: wysokość
350 px
- Obu przycisków: marginesy zewnętrzne
10 px
, wewnętrzne5 px
, kolor tła#2F180C
, kolor czcionkikhaki
Skrypt połączenia z bazą
W tabeli 1
podano wybór funkcji PHP do obsługi bazy danych. Wymagania dotyczące skryptu:
- Napisany w języku PHP, w pliku o nazwie
rezerwacja.php
- Jest uruchamiany po wypełnieniu formularza i wciśnięciu przycisku REZERWUJ. Nie jest wymagane sprawdzenie poprawności danych wpisanych w formularz
- Wypisuje tekst „Dodano rezerwację do bazy”
- Łączy się z serwerem bazodanowym na
localhost
, użytkownikroot
bez hasła, baza danych o nazwiebaza
- Pobiera dane z formularza
- Wysyła do bazy danych zapytanie wstawiające rekord do tabeli
rezerwacje
z danymi pobranymi z formularza bez wypełnionego numeru stolika (zmodyfikowanezapytanie 1
, patrz punkt „Operacje na bazie danych") - Na końcu działania skrypt zamyka połączenie z serwerem
Tabela 1. Wybór funkcji języka PHP do obsługi bazy MySQL i MariaDB
Funkcje bilioteki mysqli | Zwracana wartość |
---|---|
mysqli_connect(serwer, uzytkownik, haslo, nazwa_bazy) | id połączenia lub FALSE, gdy niepowodzenie |
mysqli_select_db(id_polaczenia, nazwa_bazy) | TRUE / FALSE, w zależności od stanu operacji |
mysqli_error(id_polaczenia) | Tekst komunikatu błędu |
mysqli_close(id_polaczenia) | TRUE / FALSE, w zależności od stanu operacji |
mysqli_query(id_polaczenia, zapytanie) | Wynik zapytania |
mysqli_fetch_row(wynik_zapytania) | Tablica numeryczna odpowiadająca wierszowi zapytania |
mysqli_fetch_array(wynik_zapytania) | Tablica zawierająca kolejny wiersz z podanych w wyniku zapytania lub FALSE, jeżeli nie ma więcej wierszy w wyniku zapytania |
mysqli_num_rows(wynik_zapytania) | Liczba wierszy w podanym zapytaniu |
mysqli_num_fields (wynik_zapytania) | Liczba kolumn w podanym zapytaniu |
- UWAGA!
- Po zakończeniu pracy utwórz plik tekstowy. Zapisz w nim nazwę przeglądarki internetowej, w której weryfikowałeś poprawność działania witryny. Plik zapisz w folderze z Twoim numerem PESEL (lub innym, którym został podpisany arkusz) jako przeglądarka.txt.
- Nagraj płytę z rezultatami pracy. W folderze z numerem PESEL (lub innym, którym został podpisany arkusz) powinny się znajdować pliki: kw1.jpg, kw2.jpg, kw3.jpg, kw4.jpg, kwerendy.txt, menu.jpg, przeglądarka.txt, restauracja.html, rezerwacja.php, styl_1.css, zad1.jpg, ewentualnie inne przygotowane pliki.
- Po nagraniu płyty sprawdź poprawność nagrania. Opisz płytę swoim numerem PESEL (lub innym, którym został podpisany arkusz) i zapakowaną w pudełku pozostaw na stanowisku, wraz z arkuszem egzaminacyjnym.
Czas przeznaczony na wykonanie zadania wynosi 150 minut.
Ocenie będzie podlegać 5 rezultatów:
- operacje na bazie danych
- wygląd witryny internetowej
- działanie witryny internetowej
- styl CSS witryny internetowej
- skrypt połączenia z bazą.
Komentarze
Czy macie jakieś pytania, sugestie, uwagi? A może zauważyliście literówkę albo błąd? Dajcie koniecznie znać: kontakt@pasja-informatyki.pl. Dziękujemy za poświęcony czas - to dzięki Wam serwis staje się coraz lepszy!
Zamów książki o IT sec z kodem: pasja
Można już zamawiać dwa tomy książek "Wprowadzenie do bezpieczeństwa IT". Mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności! Zamówień można dokonywać tutaj:
Tom 1 Tom 2Pomóż dzieciom
Polska Akcja Humanitarna od wielu lat dożywia dzieci. Proszę, poświęć teraz dosłownie chwilę i pomóż klikając w oznaczony strzałką zielony brzuszek Pajacyka. Dziękujemy!