Vitajte v poslednej časti nášho seriálu o PHP! Teraz, keď už máte základy PHP, viete pracovať s podmienkami, cyklami, formulármi a databázou MySQL, je čas tieto znalosti spojiť a vytvoriť jednoduchú webovú aplikáciu. V tejto časti sa naučíme, ako vytvoriť aplikáciu na správu používateľov, ktorá bude umožňovať pridávanie, úpravu a mazanie záznamov v databáze.
Cieľ webovej aplikácie
Našou aplikáciou bude jednoduchý systém správy používateľov, ktorý umožní:
-
Zľava!
KAABO Skywalker 10H ECO800
Elektrické kolobežky Original price was: 959,00 €.699,00 €Current price is: 699,00 €. -
Zľava!
KAABO Mantis 10 ECO800 V2
Elektrické kolobežky Original price was: 1 399,00 €.899,00 €Current price is: 899,00 €. -
Zľava!
KAABO Wolf Warrior X Pro+
Elektrické kolobežky Original price was: 2 699,00 €.1 899,00 €Current price is: 1 899,00 €.
- Pridať nového používateľa.
- Zobraziť zoznam používateľov.
- Upravovať a mazať používateľov.
Kroky k tvorbe aplikácie:
- Príprava prostredia a databázy.
- Vytvorenie formulára na pridanie používateľa.
- Zobrazenie používateľov v databáze.
- Úprava používateľa.
- Mazanie používateľa.
1. Príprava prostredia a databázy
Najprv si pripravíme databázu. V predchádzajúcej časti sme už vytvorili tabuľku pouzivatelia
, takže teraz môžeme pokračovať s použitím tejto tabuľky.
Ak nemáte tabuľku vytvorenú, tu je SQL dotaz na vytvorenie:
CREATE TABLE pouzivatelia (
id INT AUTO_INCREMENT PRIMARY KEY,
meno VARCHAR(100) NOT NULL,
email VARCHAR(100) NOT NULL,
vek INT NOT NULL
);
2. Vytvorenie formulára na pridanie používateľa
Najskôr potrebujeme vytvoriť formulár, cez ktorý môžeme do databázy pridávať nových používateľov. Vytvoríme súbor pridat.php
.
<!DOCTYPE html>
<html lang="sk">
<head>
<meta charset="UTF-8">
<title>Pridať používateľa</title>
</head>
<body>
<h1>Pridať nového používateľa</h1>
<form action="ulozit.php" method="POST">
Meno: <input type="text" name="meno" required><br><br>
E-mail: <input type="email" name="email" required><br><br>
Vek: <input type="number" name="vek" required><br><br>
<input type="submit" value="Pridať používateľa">
</form>
</body>
</html>
3. Uloženie nového používateľa
Keď používateľ vyplní formulár a klikne na tlačidlo „Pridať používateľa“, údaje sa odošlú na server. Na spracovanie týchto údajov vytvoríme súbor ulozit.php
.
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "skola_php";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Pripojenie zlyhalo: " . $conn->connect_error);
}
$meno = $_POST['meno'];
$email = $_POST['email'];
$vek = $_POST['vek'];
$sql = "INSERT INTO pouzivatelia (meno, email, vek) VALUES ('$meno', '$email', $vek)";
if ($conn->query($sql) === TRUE) {
echo "Nový používateľ bol pridaný.";
} else {
echo "Chyba: " . $conn->error;
}
$conn->close();
?>
Tento skript vezme údaje z formulára a uloží ich do databázy.
4. Zobrazenie zoznamu používateľov
Ďalej potrebujeme vytvoriť stránku, kde sa zobrazí zoznam všetkých používateľov z databázy. Vytvoríme súbor zoznam.php
.
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "skola_php";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Pripojenie zlyhalo: " . $conn->connect_error);
}
$sql = "SELECT id, meno, email, vek FROM pouzivatelia";
$result = $conn->query($sql);
echo "<h1>Zoznam používateľov</h1>";
if ($result->num_rows > 0) {
echo "<table border='1'>
<tr>
<th>ID</th>
<th>Meno</th>
<th>E-mail</th>
<th>Vek</th>
<th>Akcia</th>
</tr>";
while($row = $result->fetch_assoc()) {
echo "<tr>
<td>" . $row["id"] . "</td>
<td>" . $row["meno"] . "</td>
<td>" . $row["email"] . "</td>
<td>" . $row["vek"] . "</td>
<td>
<a href='upravit.php?id=" . $row["id"] . "'>Upraviť</a>
<a href='zmazat.php?id=" . $row["id"] . "'>Zmazať</a>
</td>
</tr>";
}
echo "</table>";
} else {
echo "Žiadni používatelia.";
}
$conn->close();
?>
Tento kód zobrazí tabuľku s používateľmi, pričom pri každom zázname budú odkazy na úpravu a zmazanie používateľa.
5. Úprava používateľa
Keď používateľ klikne na „Upraviť“, presmeruje sa na formulár, ktorý mu umožní zmeniť údaje o používateľovi. Vytvoríme súbor upravit.php
.
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "skola_php";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Pripojenie zlyhalo: " . $conn->connect_error);
}
$id = $_GET['id'];
$sql = "SELECT * FROM pouzivatelia WHERE id=$id";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
$row = $result->fetch_assoc();
} else {
echo "Používateľ neexistuje.";
exit();
}
?>
<form action="ulozit_upravu.php" method="POST">
Meno: <input type="text" name="meno" value="<?php echo $row['meno']; ?>"><br><br>
E-mail: <input type="email" name="email" value="<?php echo $row['email']; ?>"><br><br>
Vek: <input type="number" name="vek" value="<?php echo $row['vek']; ?>"><br><br>
<input type="hidden" name="id" value="<?php echo $row['id']; ?>">
<input type="submit" value="Uložiť zmeny">
</form>
Tento formulár načíta údaje používateľa podľa jeho ID a umožní ich upraviť.
6. Mazanie používateľa
Na záver vytvoríme skript, ktorý umožní zmazanie používateľa. Vytvoríme súbor zmazat.php
.
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "skola_php";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Pripojenie zlyhalo: " . $conn->connect_error);
}
$id = $_GET['id'];
$sql = "DELETE FROM pouzivatelia WHERE id=$id";
if ($conn->query($sql) === TRUE) {
echo "Používateľ bol zmazaný.";
} else {
echo "Chyba: " . $conn->error;
}
$conn->close();
?>
Záver 5. časti
V tejto záverečnej časti sme vytvorili základnú webovú aplikáciu na správu používateľov pomocou PHP a MySQL. Naučili sme sa, ako:
- Pridávať nových používateľov pomocou HTML formulára a PHP na vloženie údajov do MySQL databázy.
- Zobraziť zoznam používateľov z databázy v prehľadnej tabuľke.
- Upravovať používateľské údaje prostredníctvom formulára, ktorý načíta aktuálne údaje používateľa a umožní ich modifikáciu.
- Mať možnosť zmazať používateľa na základe jeho ID v databáze.
Možnosti rozšírenia aplikácie
Túto jednoduchú aplikáciu môžete ďalej rozvíjať a pridať jej viac funkcií, ako napríklad:
- Validácia údajov: Uistite sa, že všetky vstupy sú správne validované predtým, ako ich spracujete. Môžete rozšíriť už existujúcu kontrolu, ktorú sme použili pri spracovaní formulárov.
- Používanie PDO namiesto MySQLi: PDO (PHP Data Objects) je flexibilnejší a bezpečnejší spôsob, ako pracovať s databázami, najmä ak chcete používať viacero rôznych databázových systémov.
- Bezpečnosť a autentifikácia: Môžete pridať používateľské autentifikačné systémy, ako je prihlasovanie a registrácia, a implementovať bezpečnostné opatrenia ako ochranu proti SQL injekciám a používanie HTTPS.
Záver celého seriálu
Tento seriál vám poskytol solídne základy na to, aby ste mohli začať programovať v PHP a vytvárať dynamické webové aplikácie. Od základného pochopenia syntaxe PHP až po prácu s databázami MySQL, máte všetky potrebné znalosti na vytváranie interaktívnych a funkčných aplikácií.
Ako ďalší krok odporúčam: Bonusový diel: Pokročilé techniky v PHP a rozšírenia aplikácií
- Študovať pokročilejšie témy, ako sú objektovo orientované programovanie v PHP, správa súborov alebo práca s API.
- Experimentovať s rôznymi databázami a PHP frameworkmi (napr. Laravel), ktoré môžu zjednodušiť vývoj komplexnejších aplikácií.
Prajem vám veľa šťastia pri ďalšom rozvíjaní vašich PHP schopností a budovaní skvelých webových aplikácií!