Arkusz INF.03 : 2025 - czerwiec - zad. 04 (php)
Oznaczenie: INF.03-04-25.06-SG Limit czasu: 150 minut
Zadanie egzaminacyjne
- UWAGA!
- Numer, którym został podpisany arkusz egzaminacyjny (PESEL lub w przypadku jego braku numer paszportu) jest w zadaniu nazywany numerem zdającego.
Wykonaj aplikację internetową portalu dla firmy przewozowej, 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 7z o nazwie PlikiCz202504 zabezpieczone hasłem: *PrzEwozy!
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 zawiera dwie tabele przedstawione na Ilustracji 1. Tabela osoby zawiera informacje o osobach pracujących w firmie przewozowej. Tabela zadania zawiera opis zadania zaplanowanego do wykonania przez osobę oraz ostateczny termin jego wykonania.
Ilustracja 1. Baza danych

Za pomocą narzędzia phpMyAdmin wykonaj następujące operacje na bazie danych:
- Utwórz bazę danych o nazwie
przewozy, z zestawem polskich znaków (np.utf8_unicode_ci) - Z rozpakowanego archiwum zaimportuj tabelę z pliku
baza.sqldo utworzonej bazy - Wykonaj zrzut ekranu po imporcie. Zapisz zrzut w formacie
PNGpod nazwą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 - Wykonaj
zapytania SQLdziałające na bazieprzewozy. Zapytania zapisz w plikukwerendy.txt. Wykonaj zrzuty ekranu przedstawiające wyniki działania kwerend. Zrzuty zapisz w formaciePNGi nadaj im nazwykw1,kw2,kw3,kw4. Zrzuty powinny obejmować cały ekran monitora z widocznym paskiem zadań- Zapytanie 1: wybierające jedynie
id_zadania,zadanieidatęz tabelizadania - Zapytanie 2: wstawiające do tabeli
zadaniarekord z danymi: „spotkanie firmowe”, dnia „2024-05-10” dla osoby oidrównym1 - Zapytanie 3: usuwające rekord o
id_zadaniarównym2z tabelizadania - Zapytanie 4: wybierające jedynie
imię,nazwiskoinumer telefonuosoby oraz odpowiadające imzadanieidatęz tabelizadania. Należy posłużyć sięrelacją
- Zapytanie 1: wybierające jedynie
Witryna internetowa
Ilustracja 2. Wygląd witryny internetowej. Kursor myszy na trzecim wierszu tabeli

Cechy grafiki:
- Grafika o nazwie
autow formaciePNG, przygotowana na podstawie grafikiauto1.jpg - Tło
przezroczyste - Przeskalowana z zachowaniem proporcji do szerokości
400 px - Na boku samochodu wklejone napisy z pliku
napisy.jpgdopasowane do wielkości i położenia samochodu, zgodnie zIlustracją 2(należy zastosować perspektywę)
Ilustracja 3. Układ bloków

Cechy witryny:
- Składa się ze strony o nazwie
przewozy.php - Zapisana w języku
HTML5 - Zadeklarowany
polskijęzyk zawartości witryny - Jawnie zastosowany właściwy standard kodowania polskich znaków
- Tytuł strony „Firma Przewozowa” widoczny na karcie przeglądarki
- Arkusz stylów w pliku o nazwie
styles.cssprawidłowo połączony z kodem strony - Podział strony na bloki zrealizowany za pomocą
semantycznych znacznikówbloków językaHTML5tak, aby po uruchomieniu w przeglądarce układ bloków na stronie był zgodny zIlustracją 3 - Zawartość bloku nagłówkowego: nagłówek
pierwszegostopnia o treści: „Firma przewozowa Półdarmo" - Zawartość bloku nawigacyjnego: odnośniki o treści
kwerenda1,kwerenda2,kwerenda3,kwerenda4do plików zawierających zrzuty ekranu kwerend - Zawartość bloku głównego: sekcja lewa i prawa
- Zawartość sekcji lewej:
- Nagłówek
drugiegostopnia o treści: „Zadania do wykonania” - Tabela o
trzechkolumnach i wierszu z komórkami nagłówkowymi o treści: „Zadanie do wykonania”, „Data realizacji”, „Akcja”. Tabela jest wypełniona i modyfikowana przezskrypt 1. Jest dodatkowo modyfikowana przezskrypt 2 - Formularz wysyłający dane do tego samego pliku metodą
bezpieczną, obsługiwany przezskrypt 2. Zawiera:Pole edycyjne, poprzedzone etykietą „Zadanie do wykonania: ”Pole edycyjneprzeznaczone do wpisania daty, poprzedzone etykietą „Data realizacji: ”Przycisk„Dodaj” wysyłający dane z formularza
- Nagłówek
- Zawartość sekcji prawej:
- Obraz
auto.pngz tekstem alternatywnym o treści: „auto firmowe” - Nagłówek
trzeciegostopnia o treści: „Nasza specjalność” - Lista
punktowana(nieuporządkowana) zawierająca elementy: „Przeprowadzki”, „Przewóz mebli”, „Przesyłki gabarytowe”, „Wynajem pojazdów”, „Zakupy towarów”
- Obraz
- Zawartość stopki:
paragrafo treści „Stronę wykonał: ”, dalej wstawionynumer zdającego
Styl CSS witryny internetowej
Styl CSS zdefiniowany jest w całości w zewnętrznym pliku o nazwie styles.css. Cechy formatowania CSS działające na stronie:
- Dla selektora ciała strony: kolor tła
#FFCC99, krój czcionkiGaramond, wyrównanie tekstudo środka - Dla bloku nagłówkowego i stopki: kolor tła
DarkGreen,białykolor czcionki, marginesy wewnętrzne:30 px, rozmiar czcionki140% - Dla bloku nawigacyjnego: kolor tła
MediumSeaGreen, odstępy między wyrazami:90 px, marginesy wewnętrzne20 px - Dla sekcji lewej: szerokość
70%, wysokość500 px - Dla sekcji prawej: kolor tła
MediumSeaGreen, szerokość30%, wysokość500 px, wyrównanie tekstudo lewej - Dla selektora tabeli: obramowanie linią
kreskowanąo grubości1 pxi kolorzeDarkGreen, tabelawyśrodkowana, marginesy zewnętrzne górny i dolny30 px - Dla komórek tabeli i komórek nagłówkowych: marginesy wewnętrzne
5 px - Dla selektora odnośnika:
białykolor czcionki - Dla selektora listy punktowanej: typ elementu
okrąg - W momencie, gdy kursor myszy znajdzie się na wierszu tabeli jego kolor tła zmienia się na
DarkGreen, a kolor czcionki nabiały
- UWAGA!
- Styl CSS ciała strony, tabeli, odnośnika i listy 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 zamieszczono wybrane funkcje PHP do obsługi bazy danych. Wymagania dotyczące skryptów:
- Napisane w języku
PHP - Należy stosować znaczące nazewnictwo zmiennych i funkcji w języku polskim lub angielskim
- Łączą się z serwerem bazodanowym na
localhost, użytkownikrootbez hasła, baza danych o nazwieprzewozy - Skrypt 1
- Wysyła do bazy danych
zapytanie 1 - Kolejne zwrócone zapytaniem pola zadanie i data są wyświetlane w kolejnych wierszach tabeli w dwóch pierwszych kolumnach
- Trzecia kolumna tabeli zawiera odnośnik o treści
Usuń. Jego wybranie powoduje usunięcie rekordu z bazy za pomocą zmodyfikowanegozapytania 3, w ten sposób że odnośnik dotyczyid_zadaniadla wiersza tabeli w którym jest umieszczony
- Wysyła do bazy danych
- Skrypt 2
- dane pobrane z formularza wstawia do bazy za pomocą zmodyfikowanego
zapytania 2. Zadanie jest przypisane do osoby oidrównym1
- dane pobrane z formularza wstawia do bazy za pomocą zmodyfikowanego
- 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 |
| isset($zmienna) | Sprawdzenie, czy $zmienna istnieje |
Tabela 2. Semantic Elements in HTML
| Tag | Description |
|---|---|
| <article> | Defines independent, self-contained content |
| <aside> | Defines content aside from the page content |
| <details> | Defines additional details that the user can view or hide |
| <figcaption> | Defines a caption for a <figure> element |
| <figure> | Specifies self-contained content, like illustrations, diagrams, photos, code listings, etc. |
| <footer> | Defines a footer for a document or section |
| <header> | Specifies a header for a document or section |
| <main> | Specifies the main content of a document |
| <mark> | Defines marked/highlighted text |
| <nav> | Defines navigation links |
| <section> | Defines a section in a document |
| <summary> | Defines a visible heading for a <details> element |
| <time> | Defines a date/time |
- 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.
- Nagraj płytę z rezultatami pracy. W folderze z numerem zdającego, powinny znajdować się pliki: auto.png, import.png, kw1.png, kw2.png, kw3.png, kw4.png, kwerendy.txt, przeglądarka.txt, przewozy.php, styles.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 podlegać będzie 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!