Arkusz INF.03 : 2025 - styczeń - zad. 10 (php)
Oznaczenie: INF.03-10-25.01-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 szkolnego koła szachowego, 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 PlikiSt202510 zabezpieczone hasłem: Sz4chm4t!
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 jedną tabelę przedstawioną na Ilustracji 1. Tabela zawodnicy zawiera informacje o klasach, do których uczęszczają członkowie koła, ich pseudonimach, zdobytych tytułach i rankingach. W tabeli znajduje się również pole data_zdobycia, które umożliwia zapisanie informacji, kiedy dany zawodnik zdobył swój tytuł.
Ilustracja 1. Baza danych

Za pomocą narzędzia phpMyAdmin wykonaj następujące operacje na bazie danych:
- Utwórz bazę danych o nazwie
szachy, z zestawem polskich znaków (np.utf8_unicode_ci) - Z rozpakowanego archiwum zaimportuj tabelę z pliku
szachy.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 SQL działające na bazie
szachy. 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
pseudonim,tytuł,rankingiklasędla rankingów większych od2787, posortowanemalejącowedługrankingu - Zapytanie 2: wybierające losowo dokładnie dwa rekordy złożone z pól
pseudonimiklasaz tabelizawodnicy - Zapytanie 3: aktualizujące dane w kolumnie
klasa. Klasa „4A” jest aktualizowana do „5A” - Zapytanie 4: wybierające dla zawodników z niepustym tytułem jedynie
pseudonimidatę zdobyciaoraz obliczające ile minęło dni od daty zdobycia tytułu do dnia dzisiejszego. Obliczona liczba dni powinna być zapisana pod nazwą kolumny (aliasem) “dni”.
- Zapytanie 1: wybierające jedynie
Witryna internetowa
Ilustracja 2. Wygląd witryny internetowej

Cechy grafiki:
- Nazwa pliku
logo.png - Tło
przezroczyste - Grafika powstała z połączenia plików
board.jpgichess.jpgw ten sposób, że figury zostały wklejone na szachownicę w miejscu zgodnym zIlustracją 2 - Grafika przeskalowana z zachowaniem proporcji do szerokości
320 px
Cechy witryny:
- Składa się ze strony o nazwie
szachy.php - Zapisana w języku
HTML5 - Zadeklarowany
polskijęzyk zawartości witryny - Jawnie zastosowany właściwy standard kodowania polskich znaków
- Tytuł strony „KOŁO SZACHOWE” widoczny na karcie przeglądarki
- Arkusz stylów w pliku o nazwie
styles.cssprawidłowo połączony z kodem strony - Podział strony na bloki:
nagłówkowy, poniżejlewyiprawy, na dole blokstopki. Podział zrealizowany za pomocąsemantycznych znacznikówsekcji językaHTML5tak, aby po uruchomieniu w przeglądarce wygląd układu bloków był zgodny zIlustracją 2 - Zawartość bloku
nagłówkowego:- Nagłówek
drugiegostopnia o treści: „Koło szachowe gambit piona”. Pochylenie jest realizowane za pomocą znacznika semantycznego oznaczającego tekst uwypuklony
- Nagłówek
- Zawartość bloku
lewego:- Nagłówek
czwartegostopnia o treści: „Polecane linki” - Lista
punktowana(nieuporządkowana) o elementach: kwerenda1, kwerenda2, kwerenda3, kwerenda4, które są odnośnikami do plików zawierających odpowiadające im zrzuty ekranu − Grafikalogo.pngz tekstem alternatywnym o treści: „Logo koła”
- Nagłówek
- Zawartość bloku
prawego:- Nagłówek
trzeciegostopnia o treści: „Najlepsi gracze naszego koła” - Tabela o
pięciu kolumnachz wierszem o komórkach nagłówkowych: Pozycja, Pseudonim, Tytuł, Ranking, Klasa. Wypełniona przezskrypt 1 - Formularz zawierający przycisk z tekstem „Losuj nową parę graczy”, którego wciśnięcie powoduje wykonanie
skryptu 2 - Paragraf zawierający tekst, który należy przekopiować z pliku
legenda.txtz wypakowanego archiwum
- Nagłówek
- Zawartość
stopki: paragraf o 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. W Tabeli 2 zawarto pomoc do niektórych właściwości CSS. Cechy formatowania CSS, działające na stronie:
- Domyślnie dla wszystkich selektorów: krój czcionki
Helvetica - Wspólne dla bloku nagłówkowego i stopki: kolor tła
#FFD966,białykolor czcionki, marginesy wewnętrzne20 px, wyrównanie tekstudo środka, cień tekstu z przesunięciem w poziomie i pionie o5 px, promieniem rozmycia10 pxiczarnymkolorem - Dodatkowo dla bloku stopki: rozmiar czcionki
120% - Dla bloku lewego: kolor tła
#FFD966, szerokość25%, wysokość450 px - Dla bloku prawego: kolor tła
#C5E0B4, szerokość75%, wysokość450 px, wyrównanie tekstudo środka, cień wewnętrzny bez przesunięcia w obu osiach (wartość 0), z promieniem rozmycia15 pxiczarnymkolorem - Wspólne dla tabeli, komórek nagłówkowych i zwykłych komórek: obramowanie o szerokości
1 pxliniąciągłączarną, połączone linie tabeli - Dodatkowo dla tabeli: marginesy zewnętrzne automatycznie wyliczane przez przeglądarkę, szerokość
70% - Dla selektora listy punktowanej: typ punktora
kwadrat, wysokość wiersza (interlinia)1.5 - Dla selektora odnośnika i selektora nagłówka czwartego stopnia: kolor czcionki
SeaGreen
- UWAGA!
- Styl CSS listy punktowanej, odnośnika i nagłówka czwartego stopnia 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 nazwieszachy - Skrypt 1
- Wysyła do bazy danych
zapytanie 1 - W każdym wierszu tabeli wpisywany jest obliczony przez skrypt kolejny numer wiersza począwszy od 1 oraz zwrócone zapytaniem pola kolejnego rekordu
- Wysyła do bazy danych
- Skrypt 2
- Wysyła do bazy danych
zapytanie 2 - W nagłówku
czwartegostopnia wyświetla oba pobrane rekordy oddzielając je spacją
- Wysyła do bazy danych
- Na końcu zamykane jest 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. Wybrane właściwości CSS

- 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: import.png, kw1.png, kw2.png, kw3.png, kw4.png, kwerendy.txt, logo.png, przeglądarka.txt, styles.css, szachy.php, 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!