Poniżej jest podobny kod, ale trochę inaczej wygląda. Uruchom go, przetestuj i dodaj funkcję „Wyświetl drugi rekord”. Poczytaj o co chodzi ze zmienną $_POST[’akcja’].
<?php
$host = "localhost";
$user = "root";
$password = "";
$database = "testdb";
$conn = new mysqli($host, $user, $password);
$conn->set_charset("utf8");
?>
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="UTF-8">
<title>PHP + MySQL</title>
</head>
<body>
<h2>PHP + MySQL - podstawy</h2>
<form method="post">
<button name="akcja" value="utworz">Dodaj do bazy testdb tabelę osoby</button>
<button name="akcja" value="dane">Dodaj dane testowe</button>
<button name="akcja" value="wszystkie">Wyświetl wszystkie dane</button>
<button name="akcja" value="pierwszy">Wyświetl pierwszy rekord</button>
<button name="akcja" value="dodaj">Dodaj rekord</button>
<button name="akcja" value="update">Aktualizuj rekord ID=2</button>
<button name="akcja" value="delete">Usuń rekord ID=1</button>
</form>
<hr>
<?php
if (isset($_POST['akcja'])) {
switch ($_POST['akcja']) {
case "utworz":
$sql = "CREATE DATABASE IF NOT EXISTS testdb";
$conn->query($sql);
$conn->select_db("testdb");
$sql = "CREATE TABLE IF NOT EXISTS osoby (
id INT AUTO_INCREMENT PRIMARY KEY,
imie VARCHAR(50),
nazwisko VARCHAR(50)
)";
$conn->query($sql);
echo "Baza i tabela zostały utworzone.";
break;
case "dane":
$conn->select_db("testdb");
$osoby = [
['Jan', 'Kowalski'],
['Anna', 'Nowak'],
['Piotr', 'Wiśniewski'],
['Maria', 'Wójcik'],
['Tomasz', 'Kowalczyk']
];
foreach ($osoby as $o) {
$imie = $o[0];
$nazwisko = $o[1];
$sql = "INSERT INTO osoby (imie, nazwisko)
VALUES ('$imie', '$nazwisko')";
$conn->query($sql);
}
echo "Dodano dane testowe.";
break;
case "wszystkie":
$conn->select_db("testdb");
$sql = "SELECT * FROM osoby";
$result = $conn->query($sql);
while ($row = $result->fetch_assoc()) {
echo "ID: " . $row['id'] . "<br>";
echo "Imię: " . $row['imie'] . "<br>";
echo "Nazwisko: " . $row['nazwisko'] . "<br>";
echo "<hr>";
}
break;
case "pierwszy":
$conn->select_db("testdb");
$sql = "SELECT * FROM osoby LIMIT 1";
$result = $conn->query($sql);
$row = $result->fetch_assoc();
echo "ID: " . $row['id'] . "<br>";
echo "Imię: " . $row['imie'] . "<br>";
echo "Nazwisko: " . $row['nazwisko'];
break;
case "dodaj":
$conn->select_db("testdb");
$sql = "INSERT INTO osoby (imie, nazwisko)
VALUES ('Sebastian', 'Lis')";
$conn->query($sql);
echo "Dodano rekord.";
break;
case "update":
$conn->select_db("testdb");
$sql = "UPDATE osoby
SET imie = 'Andrzej',
nazwisko = 'Nowicki'
WHERE id = 2";
$conn->query($sql);
echo "Rekord został zaktualizowany.";
break;
case "delete":
$conn->select_db("testdb");
$sql = "DELETE FROM osoby
WHERE id = 1";
$conn->query($sql);
echo "Rekord został usunięty.";
break;
}
}
$conn->close();
?>
</body>
</html>
Twój komentarz