Arkusz EE.09 : 2021 - czerwiec - zad. 03 (php)
Oznaczenie: EE.09-03-21.06-SG Limit czasu: 150 minut
Zadanie egzaminacyjne
Wykonaj stronę prezentującą produkty w sklepie, wykorzystując pakiet XAMPP oraz edytor zaznaczający składnię oraz edytor grafiki rastrowej.
Aby wykonać zadanie, zaloguj się na konto Egzamin bez hasła. Na pulpicie znajduje się archiwum ZIP o nazwie filmy.zip zabezpieczone hasłem: #MoJeVoD$
Należy utworzyć folder o nazwie odpowiadającej numerowi PESEL zdającego lub w przypadku jego braku innemu numerowi, którym został podpisany arkusz. Archiwum należy rozpakować do tego folderu.
Ważne! Aby strona działała poprawnie rozpakowane pliki muszą znaleźć się w tym samym folderze, co pliki strony. Wszystkie wykonane w czasie egzaminu pliki w tym zrzuty ekranu, pliki strony, stylów należy umieścić w tym folderze.
Operacje na bazie danych
Do wykonania operacji na bazie należy wykorzystać tabele produkty, producenci, rodzaje przedstawione na Obrazie 1.
Obraz 1. Tabele bazy danych

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
dane3 - Do bazy
dane3zaimportuj plikdane.sqlz rozpakowanego archiwum - Wykonaj zrzut ekranu po imporcie. Zrzut zapisz w folderze z numerem PESEL lub w przypadku jego braku w folderze z innym numerem, którym został podpisany arkusz, w formacie JPEG i nazwij
egzamin. 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 baziedane3. Zapytania zapisz w plikukwerendy.txt, w folderze z numerem PESEL lub w przypadku jego braku w folderze z innym numerem, którym został podpisany arkusz. Wykonaj zrzuty ekranu przedstawiające wyniki działania kwerend. Zrzuty zapisz w formacie PNG 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,nazwa,opis,zdjeciez tabeliprodukty, dla produktów, którychidjest jedną z wartości:18, 22, 23, 25 - Zapytanie 2: wybierające jedynie pola
id,nazwa,opis,zdjeciez tabeliprodukty, dla produktów, których poleRodzaje_idprzyjmuje wartość12 - Zapytanie 4: usuwające wiersz z tabeli produkty o
idrównym15
- Zapytanie 1: wybierające jedynie pola
Witryna internetowa
Obraz 2. Witryna internetowa

Cechy grafiki:
- Plik
koralowa_wyspa.jpg, wypakowany z archiwum, należy skadrować tak, aby jego wysokość wynosiła dokładnie150 px, szerokość pozostaje bez zmian226 px
Pozostałe pliki graficzne są przygotowane i nie należy ich zmieniać.
Cechy witryny:
- Składa się ze strony o nazwie
video.php - Zastosowany właściwy standard kodowania polskich znaków
- Tytuł strony widoczny na karcie przeglądarki: „Video On Demand”
- Arkusz stylów w pliku o nazwie
styl3.cssprawidłowo połączony z kodem strony - Podział strony na bloki: dwa bloki
baneraobok siebie, bloklisty„Polecamy”, bloklisty„Filmy fantastyczne” istopka. W blokach listy znajdują się bloki filmów generowane przez skrypt. Podział zrealizowany za pomocą znaczników sekcji tak, aby wygląd układu bloków strony po uruchomieniu w przeglądarce, był zgodny zObrazem 2 - Zawartość banera lewego: nagłówek
pierwszegostopnia o treści „Internetowa wypożyczalnia filmów” - Zawartość banera prawego: tabela o
dwóchwierszach itrzechkolumnach, której widok jest zgodny zobrazem 3
Obraz 3. Tabela z banera prawego

- Zawartość bloku listy „Polecamy”:
- Nagłówek
trzeciegostopnia o treści „Polecamy” - Efekt działania
skryptu 1
- Nagłówek
- Zawartość bloku listy „Filmy fantastyczne”:
- Nagłówek
trzeciegostopnia o treści „Filmy fantastyczne” - Efekt działania
skryptu 2
- Nagłówek
- Zawartość stopki:
- Formularz wysyłający dane do tego samego pliku metodą
POSTz zawartością: - Pole edycyjne typu numerycznego poprzedzone wpisem
Usuń film nr.: - Przycisk
Usuń filmwysyłający dane do skryptu 3 - Napis o treści „Stronę wykonał: ”, dalej wstawiony
numer PESELzdającego lub w przypadku jego braku inny numer, którym został podpisany arkusz - Numer PESEL lub w przypadku jego braku inny numer, którym został podpisany arkusz jest
odnośnikiem pocztowymdo adresu e-mail:ja@poczta.com
- Formularz wysyłający dane do tego samego pliku metodą
Styl CSS witryny internetowej
Cechy formatowania CSS:
- Domyślne dla całej strony: krój czcionki
Verdana - Dla banera lewego: kolor tła
#29434E,białykolor czcionki, wyrównanie tekstudo środka, szerokość70%, wysokość70 px - Dla banera prawego: kolor tła
#29434E,białykolor czcionki, szerokość30%, wysokość70 px - Dla obu bloków list: kolor tła
#B0BEC5, wysokość320 px, paski przesuwania (scroll) - Dla stopki: kolor tła
#29434E,białykolor czcionki - Dla bloku filmu generowanego przez skrypt 1 lub 2: marginesy wewnętrzne
5 px, szerokość226px, wysokość280px - Dla selektora nagłówka trzeciego stopnia: kolor tła
#546E7A,białykolor czcionki, marginesy zewnętrzne0 px - Dla selektora nagłówka czwartego stopnia: wyrównanie tekstu
do środka, marginesy zewnętrzne0 px
Skrypt
W Tabeli 1 podano wybór funkcji PHP do obsługi bazy danych. Wymagania dotyczące skryptu:
- Napisany w języku PHP
- Skrypt łączy się z serwerem bazy danych na
localhost, użytkownikrootbez hasła, baza danych o nazwiedane3 - Po wykonaniu operacji na bazie danych skrypt zamyka połączenie z serwerem
- Działanie skryptu 1
- Wysyła do bazy
zapytanie 1 - Dla każdego zwróconego zapytaniem wiersza tworzy blok filmu, w którym znajdują się:
- Nagłówek
czwartegostopnia o treści „<id>. <nazwa>”, gdzie pola < > są pobrane z bazy - Obraz o nazwie pobranej z bazy danych i tekście alternatywnym
„film” - Paragraf (akapit) o treści zgodnej z polem opis pobranym z bazy
- Nagłówek
- Wysyła do bazy
- Działanie skryptu 2 jest identyczne jak
skryptu 1, z tą różnicą, że źródłem danych jestzapytanie 2 - Działanie skryptu 3
- Jeśli wypełniono formularz, pobiera z niego numer filmu do usunięcia
- Wysyła zmodyfikowane
zapytanie 4do bazy danych, w ten sposób, że jest usuwany wiersz, któregoidpodano w formularzu
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 w folderze z numerem PESEL lub w przypadku jego braku w folderze z innym numerem, którym został podpisany arkusz plik tekstowy o nazwie przeglądarka.txt. Zapisz w nim nazwę przeglądarki internetowej, w której weryfikowałeś poprawność działania witryny.
- Nagraj płytę z rezultatami pracy. W folderze z numerem PESEL lub w przypadku jego braku w folderze z innym numerem, którym został podpisany arkusz, powinny się znajdować pliki: alien.jpg, egzamin.jpg, et.jpg, fantasy.jpg, hobbit.jpg, koralowa_wyspa.jpg, krokodyl.jpg, kw1.png, kw2.png, kw3.png, kw4.png, kwerendy.txt, star-wars.jpg, steampunk.jpg, przeglądarka.txt, styl3.css, video.php, ewentualnie inne przygotowane pliki.
- Po nagraniu płyty sprawdź poprawność nagrania. Opisz płytę swoim numerem PESEL lub w przypadku jego braku innym numerem, którym został podpisany arkusz i pozostaw na stanowisku, zapakowaną w pudełku 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.

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!