Arkusz INF.03 : 2024 - czerwiec - zad. 11 (php)
Oznaczenie: INF.03-11-24.06-SG Limit czasu: 150 minut
Zadanie egzaminacyjne
- UWAGA!
- Folder z rezultatami pracy oraz płytę należy opisać numerem zdającego, którym został podpisany arkusz, czyli numerem PESEL lub w przypadku jego braku numerem paszportu. Dalej w zadaniu numer ten jest nazwany numerem zdającego.
Wykonaj aplikację internetową hodowli świnek morskich, wykorzystując edytor grafiki rastrowej, pakiet XAMPP oraz edytor zaznaczający składnię.
Aby wykonać zadanie, należy zalogować się na konto Egzamin bez hasła. Na pulpicie znajduje się archiwum ZIP o nazwie PlikiCz202411 zabezpieczone hasłem: @Swinki-MorSkie!
Archiwum należy rozpakować.
Na pulpicie konta Egzamin należy utworzyć folder. Jako nazwy folderu należy użyć numeru zdającego. Rozpakowane pliki należy umieścić w tym folderze. Po skończonej pracy wszystkie wyniki należy zapisać w tym folderze.
Operacje na bazie danych
Baza danych jest zgodna ze strukturą przedstawioną na Obrazie 1.
Obraz 1. Baza danych

Za pomocą narzędzia phpMyAdmin wykonaj operacje na bazie danych:
- Utwórz bazę danych o nazwie
hodowla, z zestawem polskich znaków (np.utf8_unicode_ci) - Do bazy zaimportuj tabele z pliku
baza.sqlz rozpakowanego archiwum - Wykonaj zrzut ekranu po imporcie. Zrzut zapisz w formacie
PNGi nazwijimport. 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. - Wykonaj zapytania SQL działające na bazie
hodowla. Zapytania zapisz w plikukwerendy.txt. Wykonaj zrzuty ekranu przedstawiające wyniki działania kwerend. Zrzuty zapisz w formacieJPEGi nadaj im nazwykw1,kw2,kw3,kw4. Zrzuty powinny obejmować cały ekran monitora z widocznym paskiem zadań oraz zawierać wykonane zapytanie.- Zapytanie 1: wybierające jedynie pola
imieimiotz tabeliswinkidla świnek morskich urodzonychw lipcu - Zapytanie 2: wybierające niepowtarzające się wiersze z
datą urodzeniaimiotemz tabeliswinkioraz odpowiadającą imnazwą rasyz tabelirasydlaid rasyrównego1. Należy posłużyć sięrelacją - Zapytanie 3: wybierające jedynie
imię,cenęiopisświnek morskich, którychid rasyjest równe1 - Zapytanie 4: wybierające jedynie
rasęz tabelirasy
- Zapytanie 1: wybierające jedynie pola
Witryna internetowa
Obraz 2. Witryna internetowa. Kursor myszy na pierwszym odnośniku

Przygotowanie grafiki:
- Grafikę
crested.jpg, wypakowaną z archiwum, należy skadrować tak, aby rozmiar obrazu po kadrowaniu wynosił dokładnie500 pxszerokości na330 pxwysokości. Na skadrowanym obrazie musi być widocznypysk zwierzęcia. Przykład kadru zaznaczono czarnym prostokątem naObrazie 3.
Obraz 3. Kadrowanie

Cechy witryny:
- Składa się ze stron o nazwach
peruwianka.php,american.php,crested.phpzapisanych w językuHTML5
Cechy strony peruwianka.php:
- Ustawiony język zawartości strony na
polski - Jawnie zastosowany właściwy standard kodowania polskich znaków
- Tytuł strony widoczny na karcie przeglądarki: „Hodowla świnek morskich”
- Arkusz stylów w pliku o nazwie
styl.cssprawidłowo połączony z kodem strony - Podział strony na bloki:
baner, dwa bloki lewe: blokmenui blokgłówny, jeden blokprawy, na dole blokstopki. Podział zrealizowany wyłącznie za pomocąsemantycznych znacznikówsekcji językaHTML5tak, aby po uruchomieniu w przeglądarce wygląd układu bloków był zgodny zObrazem 2 - Zawartość banera: nagłówek
pierwszegostopnia o treści „Hodowla świnek morskich - zamów świnkowe maluszki” - Zawartość lewego bloku menu:
- Odnośnik do pliku
peruwianka.php, o treści „Rasa Peruwianka” - Odnośnik do pliku
american.php, o treści „Rasa American” - Odnośnik do pliku
crested.php, o treści „Rasa Crested”
- Odnośnik do pliku
- Zawartość prawego bloku:
- Nagłówek
trzeciegostopnia o treści: „Poznaj wszystkie rasy świnek morskich” - Lista
numerowana(uporządkowana) wypełniona elementami przezskrypt 1
- Nagłówek
- Zawartość lewego bloku głównego:
- Obraz
peruwianka.jpgz tekstem alternatywnym: „Świnka morska rasy peruwianka” - Efekt działania
skryptu 2 - Linia
pozioma - Nagłówek
drugiegostopnia o treści: „Świnki w tym miocie” - Efekt działania
skryptu 3
- Obraz
- Zawartość stopki:
- Paragraf (akapit) o treści: „Stronę wykonał: ”, dalej wstawiony
numer zdającego
- Paragraf (akapit) o treści: „Stronę wykonał: ”, dalej wstawiony
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:
- Domyślne formatowanie wszystkich selektorów: krój czcionki
Helvetica - Wspólne dla banera i stopki: kolor tła
SaddleBrown,białykolor czcionki, wyrównanie tekstudo środka, marginesy wewnętrzne7 px - Dla lewego bloku menu: kolor tła
Peru, szerokość80%, wysokość40 px, margines wewnętrzny górny20 px - Dla lewego bloku głównego: szerokość
80%, wysokość700 px, rozmiar czcionki120%, paski przewijania pojawiające się tylko, gdy tekst nie mieści się w oknie - Dla bloku prawego: kolor tła
Peru,białykolor czcionki, szerokość20%, wysokość760 px - Dla selektora odnośnika: kolor czcionki
#DDD, margines wewnętrzny lewy90 px, rozmiar czcionki140%, brak podkreślenia - W momencie gdy kursor znajdzie się na odnośniku, jego kolor czcionki zmienia się na
biały - Dla selektora obrazu: opływanie tekstem
po prawej stronie(obraz znajduje się po lewej stronie), marginesy zewnętrzne30 px
- UWAGA!
- Styl CSS obrazu i odnośnika należy zdefiniować wyłącznie przy pomocy selektora tego znacznika. Jest to uwarunkowane projektem późniejszej rozbudowy witryny.
Skrypt połączenia z bazą
W Tabeli 1 podano wybór funkcji PHP do obsługi bazy danych. Wymagania dotyczące skryptów:
- Napisane w języku PHP
- Należy stosować znaczące nazewnictwo wszystkich zmiennych lub funkcji
- Skrypty łączą się z serwerem bazodanowym na
localhost, użytkownikrootbez hasła, baza danych o nazwiehodowla - Skrypt 1
- Wysyła do bazy danych
zapytanie 4 - Zwrócone zapytaniem rasy świnek morskich wypisuje jako elementy listy
- Wysyła do bazy danych
- Skrypt 2
- Wysyła do bazy danych
zapytanie 2 - Wyświetla dane pobrane z bazy danych, w następujący sposób:
- W nagłówku
drugiegostopnia treść „Rasa: <rasa>” - W paragrafie treść „Data urodzenia: <data-ur>”
- W paragrafie treść „Oznaczenie miotu: <miot>”, gdzie dane zapisane w nawiasach <> wybrane zostały z bazy danych
- W nagłówku
- Wysyła do bazy danych
- Skrypt 3
- Wysyła do bazy danych
zapytanie 3 - Wyświetla dane pobrane z bazy danych, w następujący sposób:
- W nagłówku
trzeciegostopnia treść „<imie> - <cena> zł” - W paragrafie zwrócony zapytaniem opis
- W nagłówku
- Wysyła do bazy danych
- Na końcu jest zamykane połączenie z serwerem.
Sposób przygotowania stron american.php i crested.php
- Obie strony należy przygotować na podstawie gotowego dokumentu
peruwianka.php. Należy to zrobić po wykonaniu i przetestowaniu działania strony. - Należy skopiować dwukrotnie dokument
peruwianka.phpi zmienić nazwy naamerican.phpicrested.php - Zmiany, których należy dokonać w bloku głównym dokumentu american.php (
Obraz 4):- Obraz: źródło
american.jpg, tekst alternatywny „Świnka morska rasy american” - Skrypt 2: w
zapytaniu 2należy zmienić warunek zapytania,id rasyjest równe6 - Skrypt 3: w
zapytaniu 3należy zmienić warunek zapytania,id rasyjest równe6
- Obraz: źródło
- Zmiany, których należy dokonać w bloku głównym dokumentu crested.php (
Obraz 5):- Obraz: źródło
crested.jpg, tekst alternatywny „Świnka morska rasy crested” - Skrypt 2: w
zapytaniu 2należy zmienić warunek zapytania,id rasyjest równe7 - Skrypt 3: w
zapytaniu 3należy zmienić warunek zapytania,id rasyjest równe7
- Obraz: źródło
Obraz 4. Zmodyfikowany plik american.php

Obraz 5. Zmodyfikowany plik crested.php

- UWAGA!
- Po zakończeniu pracy utwórz plik tekstowy o nazwie przeglądarka.txt. Zapisz w nim nazwę przeglądarki internetowej, w której weryfikowana była poprawność działania witryny. Umieść go w folderze z numerem zdającego.
- UWAGA!
- Nagraj płytę z rezultatami pracy. W folderze z numerem zdającego, powinny znajdować się pliki: american.jpg, american.php, crested.jpg, crested.php, import.png, kw1.jpg, kw2.jpg, kw3.jpg, kw4.jpg, kwerendy.txt, peruwianka.jpg, peruwianka.php, przeglądarka.txt, styl.css, ewentualnie inne przygotowane pliki. Po nagraniu płyty sprawdź poprawność jej odczytu. Opisz płytę numerem zdającego i pozostaw zapakowaną w pudełku 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ą.
Tabela 1. Wybór funkcji języka PHP do obsługi bazy MySQLi 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 |

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!