Arkusz EE.09 : 2021 - styczeń - zad. 06 (php)
Oznaczenie: EE.09-06-21.01-SG Limit czasu: 150 minut
Zadanie egzaminacyjne
Wykonaj aplikację internetową portu lotniczego, wykorzystując pakiet XAMPP
oraz edytor zaznaczający składnię.
Aby wykonać zadanie, zaloguj się na konto Egzamin
bez hasła. Na pulpicie znajdziesz archiwum ZIP o nazwie z6.zip
zabezpieczone hasłem: @SaMolotY9%
Archiwum należy rozpakować.
Na pulpicie
konta Egzamin
utwórz folder. Jako nazwy folderu użyj swojego numeru
PESEL
. Umieść w tym folderze rozpakowane pliki.
Po skończonej pracy wyniki zapisz również w tym folderze.
Operacje na bazie danych
Do wykonania zadania należy użyć tabel: przyloty
, samoloty
, odloty
przedstawionych na obrazie 1
.
Obraz 1. Tabele wykorzystane w zadaniu
Uruchom usługi MySQL
i Apache
za pomocą XAMPP Control Panel
. Za pomocą narzędzia phpMyAdmin
wykonaj podane operacje na bazie danych:
- Utwórz bazę danych o nazwie
egzamin
- Do bazy
egzamin
zaimportuj plikegzamin.sql
z rozpakowanego archiwum - Wykonaj zrzut ekranu po imporcie. Zrzut zapisz w folderze z numerem PESEL, w formacie PNG i nazwij
import
. Nie kadruj zrzutu. Powinien on obejmować cały ekran monitora, 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 bazieegzamin
. Zapytania zapisz w plikukwerendy.txt
, w folderze z numerem PESEL. Wykonaj zrzuty ekranu przedstawiające wyniki działania kwerend. Zrzuty zapisz w formacie JPG i nadaj im nazwykw1
,kw2
,kw3
,kw4
. Zrzuty powinny obejmować cały ekran monitora z widocznym paskiem zadań- Zapytanie 1: wybierające jedynie pola
id
,nr_rejsu
,czas
,kierunek
istatus_lotu
z tabeliodloty
posortowanemalejąco
wedługczasu
- Zapytanie 2: wyznaczające najwcześniejszy (najmniejszy)
czas odlotu
dla lotów, którychczas odlotu
jest pomiędzy10:10 ÷ 10:19
- Zapytanie 3: wybierające jedynie pola
nr_rejsu
z tabeliodloty
orazlinie
z tabelisamoloty
, dla lotów których kierunkiem jestMalta
; zapytanie wykorzystujerelację
- Zapytanie 4: aktualizujące w tabeli
przyloty
polestatus_lotu
na:„planowy”
dla lotu o numerze rejsuLH9829
- Zapytanie 1: wybierające jedynie pola
Witryna internetowa
Obraz 2. Witryna internetowa
Przygotowanie grafiki:
- Plik
zad6.png
, wypakowany z archiwum, należy przeskalować z zachowaniem proporcji tak, aby jego wysokość wynosiła dokładnie150 px
. Należy zachować przezroczystość obrazu
Cechy witryny:
- Składa się ze strony o nazwie
airport.php
- Zastosowany właściwy standard kodowania polskich znaków
- Tytuł strony widoczny na karcie przeglądarki: „Odloty samolotów”
- Arkusz stylów w pliku o nazwie
styl6.css
prawidłowo połączony z kodem strony - Podział strony na bloki:
dwa
blokibanera
, poniżej blokgłówny
, następnietrzy
blokistopki
. Podział zrealizowany za pomocą znaczników sekcji, zgodnie zobrazem 2
- Zawartość pierwszego bloku banera: nagłówek
drugiego
stopnia o treści „Odloty z lotniska” - Zawartość drugiego bloku banera: obraz
zad6.png
z tekstem alternatywnym „logotyp” - Zawartość bloku głównego:
- Nagłówek
czwartego
stopnia o treści: „tabela odlotów” - Tabela o
pięciu
kolumnach - Nagłówki kolumn mają podpisy: „lp.”, „numer rejsu”, „czas”, „kierunek”, „status”
- Zawartość tabeli jest wypełniana
skryptem 1
- Nagłówek
- Zawartość pierwszego bloku stopki:
- Odnośnik o treści „Pobierz obraz” otwierający plik
kw1.jpg
w nowym oknie
- Odnośnik o treści „Pobierz obraz” otwierający plik
- Zawartość drugiego bloku stopki: efekt działania
skryptu 2
- Zawartość trzeciego bloku stopki: tekst: „Autor: ”, dalej wstawiony
numer PESEL
zdającego
Styl CSS witryny internetowej
Cechy formatowania CSS:
- Dla pierwszego bloku banera: wyrównanie tekstu
do środka
, szerokość75%
, wysokość150 px
, rozmiar czcionki200%
- Dla drugiego bloku banera: szerokość
25%
, wysokość150 px
- Dla bloku głównego: tło koloru
RGB 128, 0, 0
; marginesy wewnętrzne50 px
, tekstwielkimi literami
(niezależnie od tego jak tekst został zapisany w HTML, wymagana transformacja na wielkie litery) - Dla pierwszego i trzeciego bloku stopki: szerokość
20%
, margines wewnętrzny górny:90 px
(tylko górny) - Dla drugiego bloku stopki: wyrównanie tekstu
do środka
, szerokość60%
- Dla selektora body: krój czcionki
Arial
, kolor tłaRGB 244, 164, 96
;biały
kolor czcionki - Dla selektora paragrafu (akapitu): rozmiar czcionki
150%
, obramowanie2 px
, liniąkropkowaną
koloruRGB 169, 169, 169
- W momencie najechania kursorem na paragraf, jego kolor tła zmienia się na
RGB 169, 169, 169
- Dla selektora tabeli: szerokość
100%
, obramowanie tabeli i komórki ma byćpołączone
(collapse) - Dla selektora komórki danych i komórki nagłówkowej tabeli: obramowanie
1 px
, liniąciągłą
o kolorzeRGB 192, 192, 192
; marginesy wewnętrzne5 px
Skrypt połączenia z bazą
W tabeli 1
podano wybór funkcji PHP do obsługi bazy danych. Wymagania dotyczące skryptów:
- Oba skrypty napisane w języku PHP, w pliku
airport.php
- Działanie skryptu 1:
- Skrypt łączy się z serwerem bazodanowym na
localhost
, użytkownikroot
bez hasła, baza danych o nazwieegzamin
- Skrypt wysyła do bazy danych
zapytanie 1
- Dane otrzymane z bazy są umieszczane w kolejnych wierszach tabeli, w odpowiednich komórkach, tak jak na
Obrazie 2
- Po wykonaniu operacji na bazie skrypt zamyka połączenie z serwerem
- Skrypt łączy się z serwerem bazodanowym na
- Działanie skryptu 2:
- W oparciu o mechanizm
ciasteczek
skrypt wypisuje na stronie komunikaty:- Gdy odwiedzający wejdzie na stronę pierwszy raz zakładane jest ciasteczko z czasem trwania
1 godzina
od utworzenia oraz wyświetlany jest wparagrafie
, czcionkąpochyloną
, komunikat: „Dzień dobry! Sprawdź regulamin naszej strony” - Jeżeli odwiedzający w ciągu godziny od poprzedniego wejścia wejdzie ponownie na stronę wyświetlany jest w
paragrafie
, czcionkąpogrubioną
, komunikat „Miło nam, że nas znowu odwiedziłeś”
- Gdy odwiedzający wejdzie na stronę pierwszy raz zakładane jest ciasteczko z czasem trwania
- W oparciu o mechanizm
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, zapisz go w folderze z numerem PESEL, jako przeglądarka.txt.
- Nagraj płytę z rezultatami pracy. W folderze z numerem PESEL powinny się znajdować pliki: airport.php, import.png, kw1.jpg, kw2.jpg, kw3.jpg, kw4.jpg, kwerendy.txt, przeglądarka.txt, styl6.css, zad6.png, ewentualnie inne przygotowane pliki.
- Po nagraniu płyty sprawdź poprawność nagrania. Opisz płytę swoim numerem PESEL 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
- zawartość 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!