Vytvořte si AI tutoriál na míru! Vyzkoušejte generátor tutoriálů a ušetřete čas.

Jak používat MySQL v PHP

Sdílet na sociálních sítích:
Napsal: Jan Kubice
PHP

Naučte se, jak se připojit k MySQL databázi z PHP, provádět dotazy a zpracovávat výsledky. Podrobný návod s příklady.

Jak používat MySQL v PHP

\n

Tento tutoriál vás provede základy používání databáze MySQL v PHP. Naučíte se, jak se připojit k databázi, provádět SQL dotazy a zpracovávat výsledky. Budeme používat objektově orientovaný přístup pro větší přehlednost a udržitelnost kódu.

\n\n

1. Instalace MySQL a PHP

\n

Před začátkem je nutné mít nainstalovaný MySQL server a PHP na vašem serveru (nebo lokálním počítači s XAMPP, WAMP, nebo podobným serverovým stackem). Pokud už je máte nainstalované, můžete tuto část přeskočit.

\n\n

2. Připojení k databázi

\n

Prvním krokem je navázání spojení s MySQL databází. K tomu použijeme funkci mysqli_connect(). V kódu nahraďte 'localhost', 'username', 'password' a 'database_name' vašimi skutečnými údaji.

\n\n
connect_error) {\n  die(\"Spojení selhalo: \" . $conn->connect_error);\n}\n?>
\n\n

3. Provádění SQL dotazů

\n

Po navázání spojení můžeme provádět SQL dotazy pomocí funkce mysqli_query(). Zde je příklad dotazu pro výběr všech položek z tabulky users:

\n\n
query($sql);\n\nif ($result->num_rows > 0) {\n  // Výsledek obsahuje data\n  while($row = $result->fetch_assoc()) {\n    echo \"ID: \" . $row[\"id\"]. \" - Name: \" . $row[\"name\"]. \" - Email: \" . $row[\"email\"]. \"
\";\n }\n} else {\n echo \"Žádné výsledky.\";\n}\n?>
\n\n

4. Zpracování výsledků

\n

Funkce mysqli_query() vrací objekt mysqli_result. Pomocí metod num_rows a fetch_assoc() můžeme získat počet řádků a jednotlivé řádky jako asociativní pole.

\n\n

5. Uzavření spojení

\n

Po dokončení práce s databází je důležité uzavřít spojení pomocí funkce mysqli_close():

\n\n
close();\n?>
\n\n

6. Ochrana před SQL Injection

\n

Velmi důležité je chránit se před SQL Injection. Nikdy nevkládejte uživatelské vstupy přímo do SQL dotazů. Používejte připravené příkazy (prepared statements) nebo escapování (escaping) dat.

\n\n
prepare(\"SELECT id, name, email FROM users WHERE name = ?\");\n$stmt->bind_param(\"s\", $name); // 's' značí string\n$name = $_GET[\"name\"]; // Uživatelský vstup\n$stmt->execute();\n$result = $stmt->get_result();\n// ... zpracování výsledku\n$stmt->close();\n?>
\n\n

Tento tutoriál pokrývá jen základní použití MySQL v PHP. Pro pokročilejší techniky, jako je práce s transakcemi, stored procedures a optimalizace dotazů, se podívejte na oficiální dokumentaci MySQL a PHP.


Související návody

Komentáře

Zatím žádné komentáře. Buďte první, kdo napíše svůj názor!