Krok 1: Utwórz bazę danych i tabele
Skopiuj poniższy kod SQL do phpMyAdmin lub swojego lokalnego serwera MySQL.
-- Tworzenie bazy danych
CREATE DATABASE szkola;
USE szkola;
-- Tabela klasy
CREATE TABLE klasy (
id_klasy INT AUTO_INCREMENT PRIMARY KEY,
nazwa VARCHAR(50)
);
-- Tabela uczniowie
CREATE TABLE uczniowie (
id INT AUTO_INCREMENT PRIMARY KEY,
imie VARCHAR(50),
nazwisko VARCHAR(50),
id_klasy INT,
FOREIGN KEY (id_klasy) REFERENCES klasy(id_klasy)
);
Krok 2: Dodaj przykładowe dane
Dodaj kilka klas i uczniów do tabeli.
INSERT INTO klasy (nazwa) VALUES ('4TI'), ('3TI');
INSERT INTO uczniowie (imie, nazwisko, id_klasy)
VALUES
('Jan', 'Kowalski', 1),
('Anna', 'Nowak', 1),
('Piotr', 'Wiśniewski', 2),
('Maria', 'Lewandowska', 2);
Krok 3: Połączenie z bazą i pobranie danych (PHP)
Skopiuj ten kod PHP do pliku np. lista_uczniow.php i uruchom lokalnie w XAMPP.
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "szkola";
// Połączenie z bazą
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Błąd połączenia: " . $conn->connect_error);
}
// Pobieranie uczniów z nazwą klasy
$result = $conn->query("
SELECT u.imie, u.nazwisko, k.nazwa AS klasa
FROM uczniowie u
LEFT JOIN klasy k ON u.id_klasy = k.id_klasy
");
while($row = $result->fetch_assoc()) {
echo $row["imie"]." ".$row["nazwisko"]." (".$row["klasa"].")<br>";
}
$conn->close();
?>
Krok 4: Ćwiczenia dodatkowe
- Dodaj nowego ucznia do tabeli poprzez formularz.
- Zmień klasę wybranego ucznia.
- Usuń ucznia z tabeli.
- Spróbuj wyszukać uczniów po nazwisku lub klasie.
Po przepisaniu kodu do lokalnego serwera XAMPP uczniowie zobaczą wyniki na własnej maszynie i będą mogli eksperymentować bez ryzyka uszkodzenia serwera.