W budowie
Prezentacja modułu

Część 18 · Wzorce egzaminacyjne INF.03 (PHP i mysqli) — kurs PHP INF.03

Część 18 kursu PHP pod kątem INF.03: Wzorce zadań egzaminacyjnych w PHP i mysqli. Teoria w skrócie i 16 ćwiczeń z automatycznym sprawdzaniem.

  • 45 min
  • 16 slajdów
  • Notatki nauczyciela: N
  • Strona modułu: otwórz
Plan · 45 min

Co dziś robimy

  1. 12 minJak czytać arkusz INF.03 Najpierw przeczytaj całość i wypisz wymagania jako listę kontrolną: baza, formularz…
  2. 12 minTypowe zadania PHP w arkuszu Warto mieć w głowie gotowe schematy: połączenie z bazą, zapytanie przygotowane, pętla…
  3. 12 minTypowe zadania SQL w arkuszu Warto zaczynać od zapytań sprawdzających: SELECT * FROM tabela pokazuje, czy dane…
  4. 4 minĆwiczenia 16 zadań w module — wybierz 3–4 na lekcję
  5. 5 minPodsumowanie bilet wyjściowy i zadanie domowe
Atom 1 z 4 · ~12 min

Jak czytać arkusz INF.03

Arkusz zwykle składa się z części teoretycznej i praktycznej. W praktycznej dostajesz opis zadania, pliki startowe i listę wymagań, które trzeba spełnić w określonym czasie.

  • Najpierw przeczytaj całość i wypisz wymagania jako listę kontrolną: baza, formularz, wyświetlanie, walidacja, bezpieczeństwo.
  • Dopiero potem pisz kod — łatwiej wtedy ocenić, co jest gotowe.
  • Punktowane są efekty widoczne w przeglądarce i w bazie, a nie styl kodu.
  • Dlatego najpierw uruchamiamy działającą wersję, a porządki robimy na końcu, jeśli zostanie czas.
Kod · atom 1 · ~3 min

Jak to wygląda w kodzie

// Plan pracy z arkusza (przyklad)
// 1. utworz baze i tabele
// 2. zrob formularz HTML
// 3. odbierz dane w PHP
// 4. zapisz do bazy
// 5. wyswietl wyniki
// 6. zabezpiecz wyjscie
echo 'Plan gotowy';
Przykład na żywo · atom 1 · ~3 min

Uruchom i pokaż

// Plan pracy z arkusza (przyklad)
// 1. utworz baze i tabele
// 2. zrob formularz HTML
// 3. odbierz dane w PHP
// 4. zapisz do bazy
// 5. wyswietl wyniki
// 6. zabezpiecz wyjscie
echo 'Plan gotowy';
Sprawdzenie · atom 1 · ~2 min

Pytanie do klasy

Od czego zacząć arkusz?

Atom 2 z 4 · ~12 min

Typowe zadania PHP w arkuszu

Powtarzające się elementy to: formularz z kilkoma polami, odbiór danych metodą POST, walidacja, zapis do bazy i wypisanie wyników w tabeli. Często dochodzi upload pliku lub obsługa sesji.

  • Warto mieć w głowie gotowe schematy: połączenie z bazą, zapytanie przygotowane, pętla wypisująca wiersze i funkcja zabezpieczająca wyjście.
  • To szkielet, który wystarcza w większości zadań.
  • Uważaj na szczegóły z treści: nazwy tabel, nazwy kolumn, wymagane komunikaty.
  • Punkty sering traci się nie na logice, a na niezgodności z opisem.
Kod · atom 2 · ~3 min

Jak to wygląda w kodzie

$polaczenie = mysqli_connect('localhost', 'root', '', 'egzamin');
mysqli_set_charset($polaczenie, 'utf8mb4');

$stmt = mysqli_prepare($polaczenie, 'INSERT INTO zgloszenia (imie, email) VALUES (?, ?)');
mysqli_stmt_bind_param($stmt, 'ss', $imie, $email);
mysqli_stmt_execute($stmt);

echo '<p>Zgloszenie zapisane</p>';
Przykład na żywo · atom 2 · ~3 min

Uruchom i pokaż

$polaczenie = mysqli_connect('localhost', 'root', '', 'egzamin');
mysqli_set_charset($polaczenie, 'utf8mb4');

$stmt = mysqli_prepare($polaczenie, 'INSERT INTO zgloszenia (imie, email) VALUES (?, ?)');
mysqli_stmt_bind_param($stmt, 'ss', $imie, $email);
mysqli_stmt_execute($stmt);

echo '<p>Zgloszenie zapisane</p>';
Sprawdzenie · atom 2 · ~2 min

Pytanie do klasy

Jaki schemat najczęściej się powtarza?

Atom 3 z 4 · ~12 min

Typowe zadania SQL w arkuszu

Zadania SQL zwykle dotyczą utworzenia tabeli, wstawienia danych, zapytania z warunkiem i raportu z agregacją. Często trzeba też połączyć dwie tabele po kluczu.

  • Warto zaczynać od zapytań sprawdzających: SELECT * FROM tabela pokazuje, czy dane zapisały się poprawnie.
  • Dopiero potem budujemy raport z grupowaniem.
  • Uważaj na wielkość liter w nazwach i na apostrofy w wartościach tekstowych.
  • Najczęstsze błędy to brak GROUP BY przy agregacji i brak warunku w UPDATE .
Kod · atom 3 · ~3 min

Jak to wygląda w kodzie

SELECT k.nazwa, COUNT(z.id) AS zgloszenia
FROM klasy k
LEFT JOIN zgloszenia z ON z.klasa_id = k.id
GROUP BY k.nazwa
ORDER BY zgloszenia DESC;

SELECT imie FROM zgloszenia WHERE email LIKE '%@wp.pl';
Przykład na żywo · atom 3 · ~3 min

Uruchom i pokaż

SELECT k.nazwa, COUNT(z.id) AS zgloszenia
FROM klasy k
LEFT JOIN zgloszenia z ON z.klasa_id = k.id
GROUP BY k.nazwa
ORDER BY zgloszenia DESC;

SELECT imie FROM zgloszenia WHERE email LIKE '%@wp.pl';
Sprawdzenie · atom 3 · ~2 min

Pytanie do klasy

Od jakiego zapytania zacząć?

Zamknięcie · ~3 min

Co zabrać z lekcji

  • Punktowane są efekty widoczne w przeglądarce i w bazie, a nie styl kodu.
  • Warto mieć w głowie gotowe schematy: połączenie z bazą, zapytanie przygotowane, pętla wypisująca wiersze i funkcja zabezpieczająca wyjście.
  • Warto zaczynać od zapytań sprawdzających: SELECT * FROM tabela pokazuje, czy dane zapisały się poprawnie.
  • Ćwiczenia
Bilet wyjściowy: Co jest częstym błędem w UPDATE?
Odpowiedź: c) Brak warunku WHERE
Hyżyk· Część 18 · Wzorce egzaminacyjne INF.03 (PHP i mysqli) — kurs moduł 1 / 1