Arkusz EE.09 : 2021 - styczeń - zad. 02 (php)
Oznaczenie: EE.09-02-21.01-SG Limit czasu: 150 minut
Zadanie egzaminacyjne
Wykonaj aplikację internetową strony o futbolu, 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 pilkarz2.zip zabezpieczone hasłem: $piLkaRze%
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: zawodnik, pozycja, rozgrywka i liga przedstawionych na obrazie 1. Ponadto na obrazie przedstawiono wartości w tabeli pozycja.
Obraz 1. Tabele wykorzystane w zadaniu oraz wartości w tabeli pozycja

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
egzaminzaimportuj plikegzamin.sqlz 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 SQLdział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
imieinazwiskoz tabelizawodnikdla zawodników, którym przypisane jestid pozycjirówne4 - Zapytanie 2: wybierające jedynie pola
zespol,punkty,grupaz tabeliligasortowanemalejącowedługpunktów - Zapytanie 3: wybierające jedynie pola
id,nazwiskoz tabelizawodnikoraznazwęz tabelipozycjadla zawodników, którychidjest równe3lub5 - Zapytanie 4: usuwające jedną kwerendą SQL wszystkie dane z tabeli
rozgrywka(sama tabela nie jest usuwana)
- Zapytanie 1: wybierające jedynie pola
Witryna internetowa
Obraz 2. Witryna internetowa, kursor na piątym bloku informacyjnym, zmienił się kolor tła i czcionki

Przygotowanie grafiki:
- Plik
zad2.png, wypakowany z archiwum, należy przeskalować z zachowaniem proporcji tak, aby jego szerokość wynosiła dokładnie50 px. Należy zachować przezroczystość obrazu
Cechy witryny:
- Składa się ze strony o nazwie
liga.php - Zastosowany właściwy standard kodowania polskich znaków
- Tytuł strony widoczny na karcie przeglądarki: „piłka nożna”
- Arkusz stylów w pliku o nazwie
styl2.cssprawidłowo połączony z kodem strony - Podział strony na bloki:
baner, bloklewyiprawy, blokgłówny, blokligazawierający zmienną liczbę bloków z informacją o drużynach. Bloki informacyjne generowane są skryptem, ich liczba zależy od liczby rekordów. Podział zrealizowany za pomocą znaczników sekcji, zgodnie zobrazem 2 - Zawartość bloku banera:
- Nagłówek
trzeciegostopnia o treści „Reprezentacja polski w piłce nożnej” - Obraz
obraz1.jpgz tekstem alternatywnym o treści: „reprezentacja”
- Nagłówek
- Zawartość bloku lewego:
- Formularz wysyłający dane metodą
POSTdo tej samej strony, zawierający:- Listę
rozwijalnąz wpisami: Bramkarze, Obrońcy, Pomocnicy, Napastnicy - Przycisk wysyłający zawartość formularza z opisem „Zobacz”
- Listę
- Obraz
zad2.pngz tekstem alternatywnym o treści: „piłka” - Paragraf (akapit) o treści: „Autor: ”, dalej wstawiony
numer PESELzdającego
- Formularz wysyłający dane metodą
- Zawartość bloku prawego:
- Lista
numerowana(uporządkowana) a w niej efekt działaniaskryptu 1
- Lista
- Zawartość bloku głównego: nagłówek
trzeciegostopnia o treści: „Liga mistrzów” - Zawartość bloku liga: Efekt działania
skryptu 2
Styl CSS witryny internetowej
Cechy formatowania CSS:
- Dla bloku banera:
białykolor czcionki, wyrównanie tekstudo środka, wysokość330 px - Dla pojedynczego bloku z informacją o drużynach:
białykolor czcionki, wyrównanie tekstudo środka, szerokość170 px, marginesy zewnętrzne5 px, obramowanie:1 px, liniaciągła, kolorbiały, zaokrąglenie rogów obramowania15 px - W momencie najechania kursorem na pojedynczy blok z informacją o drużynach, kolor tła zmienia się na
białya kolor czcionki naczarny - Dla bloku głównego:
białykolor czcionki - Dla bloku lewego: kolor tła
WhiteSmoke, szerokość30%, wyrównanie tekstudo środka, wysokość150 px - Dla bloku prawego: kolor tła
WhiteSmoke, szerokość70%, wysokość150 px - Dla znacznika body: krój czcionki
Verdana, kolor tłaSeaGreen - Dla znacznika nagłówka trzeciego stopnia: wyrównanie tekstu
do środka, odległość między literami6 px, tekst napisanykapitalikami(capitalize)
Skrypt połączenia z bazą
W tabeli 1 podano wybór funkcji PHP do obsługi bazy danych. Wymagania dotyczące skryptów:
- Napisany w języku PHP, w pliku
liga.php - Skrypt łączy się z serwerem bazodanowym na
localhost, użytkownikrootbez hasła, baza danych o nazwieegzamin - Po wykonaniu operacji na bazie danych skrypt zamyka połączenie z serwerem
- Działanie skryptu 1, który odbiera dane przesłane z formularza:
- Odbiera dane z pola listy wyboru
- Jeśli nic nie jest wybrane nie jest wykonywana żadna akcja
- W innym przypadku skrypt wysyła do bazy danych zmodyfikowane
zapytanie 1tak, że w warunkuid pozycjijest zgodne z wyborem w liście - Wyświetla zwrócone zapytaniem dane:
imionainazwiskaw paragrafach, jako elementy listynumerowanej
- Działanie skryptu 2
- Wysyła do bazy danych
zapytanie 2 - Definiuje blok (za pomocą znacznika sekcji), a w nim wyświetla dane przesłane zapytaniem dotyczące jednego rekordu:
- W nagłówku
drugiegostopnianazwę zespołupobraną z bazy danych - W nagłówku
pierwszegostopniapunktypobrane skryptem - W paragrafie tekst: „grupa: <grupa>”, gdzie <grupa> oznacza daną pobraną skryptem
- W nagłówku
- Liczba wygenerowanych bloków odpowiada liczbie wierszy zwróconych zapytaniem
- Wysyła do bazy danych
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: import.png, kw1.jpg, kw2.jpg, kw3.jpg, kw4.jpg, kwerendy.txt, liga.php, obraz1.jpg, przeglądarka.txt, styl2.css, zad2.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!
Kody zniżkowe - kup taniej
Mamy fajne rabaty dla widzów naszego kanału YouTube - otóż można zamówić dwa tomy książek "Wprowadzenie do bezpieczeństwa IT" (15% taniej) oraz książkę "Twierdza Linux. Bezpieczeństwo dla dociekliwych" (10% taniej) - użyjcie odpowiedniego kodu, wpisując go w specjalne pole w koszyku:
KOD: pasja
Dostajesz rabat -15%
KOD: pasja
Dostajesz rabat -15%
KOD: pasja-linux
Dostajesz rabat -10%
Pomóż 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!