Skip to content

Blok 5

Dziś egzamin próbny na prawdziwym arkuszu INF.03 z czerwca 2026, 150 minut jak na egzaminie. Nie ma punktów ani oceny, a o pomoc można pytać prowadzącego i kolegów. Wynik dostajecie osobno dla każdej części: bazy, HTML-a, układu, CSS i PHP. Widać z niego, co zostało z ostatniego miesiąca, a co trzeba powtórzyć.

Cztery najczęstsze błędy z bloku 4. Po die() strona zostawała pusta i komunikat znikał. Odczyt z bazy przed obsługą formularza pokazywał stan sprzed zapisu. Zadanie B bez walidacji przepuściło złe dane do wspólnej bazy. Zła nazwa pliku, także kolejność imie_nazwisko, kosztowała punkt. Na egzaminie nazwy plików i teksty przepisuje się dokładnie z arkusza.

Quiz z czterech bloków: kod i cztery odpowiedzi na slajdzie, każdy najpierw odpowiada sam.

Pytanie 1: co wypisze $a . $b i $a + $b dla dwóch napisów “5”? Odpowiedź: c, 55 / 10. Kropka skleja napisy, a plus w PHP zawsze liczy.

Pytanie 2: funkcja liczy średnią, ale nie ma return. Co zwróci? Odpowiedź: c, NULL. Funkcja bez return oddaje null i PHP nie zgłasza błędu.

Pytanie 3: kod czyta $_GET['kategoria'] z wartością domyślną, a w adresie jest ?kat=elita. Co wypisze? Odpowiedź: c, wszystkie. Klucz w adresie (kat) nie zgadza się z kluczem w kodzie (kategoria), więc działa wartość domyślna.

Pytanie 4: PHP wypisuje link index.php?kontynent=3. Co trafi do $_GET po kliknięciu? Odpowiedź: a, ['kontynent' => '3']. Link działa jak adres wpisany ręcznie: wszystko po znaku zapytania ląduje w $_GET, a kluczem jest nazwa przed =.

Pytanie 5: co trafi do $_POST po wybraniu opcji „Monika” z value="2"? Odpowiedź: b, '2'. Lista wysyła atrybut value wybranej opcji, a tekst opcji jest tylko dla użytkownika.

Pytanie 6: mysqli_fetch_row i $wiersz[1] dla zapytania SELECT idTurysta, nick. Co wypisze? Odpowiedź: b, same nicki. mysqli_fetch_row numeruje kolumny od zera w kolejności z SELECT, więc [1] to druga kolumna. mysqli_fetch_assoc z bloku 4 daje te same dane pod nazwami kolumn.

Pytanie 7: zapytanie po mysqli_close. Co się stanie? Odpowiedź: c. PHP 8 zatrzymuje stronę błędem „mysqli object is already closed”. Połączenie zamyka się po ostatnim zapytaniu na stronie.

Pytanie 8: mysqli_fetch_row wywołane raz, bez pętli. Ile opcji powstanie przy 13 rekordach? Odpowiedź: b, jedna. Każde wywołanie pobiera jeden wiersz, więc wszystkie rekordy wymagają pętli while.

Format praktycznej części egzaminu INF.03.

Egzamin praktyczny INF.03 ma pięć części: bazę danych, zawartość strony, działanie strony, styl CSS i skrypty. Egzaminator ocenia je niezależnie, każde kryterium na 0 albo 1. Egzamin zdaje się od 75% kryteriów. Zacznij od bazy, bo bez niej skrypty nie zadziałają.

Na egzaminie oddajesz folder z plikami strony, zrzutami, kwerendy.txt z zapytaniami SQL i przeglądarka.txt. Zrzut obejmuje cały ekran z paskiem zadań, a wykadrowanego egzaminator nie ocenia. Nazwy plików, format zrzutów i teksty przepisuj dokładnie z arkusza.

Arkusz z PHP zawiera tabelę funkcji mysqli, więc API nie trzeba pamiętać. mysqli_fetch_row zwraca kolumny po numerze, mysqli_fetch_array po nazwie albo numerze, a mysqli_close musi być ostatnią operacją na bazie na stronie.

Zasady egzaminu próbnego. Zamiast numeru PESEL zakładasz folder nazwisko_imie_blok5, a w stopce zamiast numeru zdającego wpisujesz imię i nazwisko. Pliki do zadania i arkusz w PDF są w zwykłym archiwum pliki2.zip bez hasła; pobierz je od razu na początku. Masz 10 minut na przeczytanie arkusza i 150 minut pracy, bez AI i bez internetu. O pomoc możesz pytać prowadzącego i kolegów.

Egzamin próbny: arkusz INF.03-02 z czerwca 2026, pliki do zadania w pliki2.zip. Pobierz pliki2.zip

Oddanie: folder nazwisko_imie_blok5 ze zrzutami, kwerendy.txt, index.php, styl.css, zdjęciami i przeglądarka.txt. Na oddanie internet wraca. Obie grupy wysyłają folder spakowany zipem na Teams.

Zapowiedź bloku 6: baza danych pamięta dane dla wszystkich jednakowo. Żeby strona pamiętała coś tylko dla jednej osoby, na przykład kto jest zalogowany, potrzebna jest sesja.

Koniec bloku.