Dalej•LEKCJA 25 / 26

Baza danych z PDO

Kurs PHP · Wyjaśnienie, przykłady, oczekiwany wynik i ćwiczenie.

PDO umożliwia bezpieczne wykonywanie zapytań do bazy danych.

Jak to działa?

Przy danych pochodzących od użytkownika stosuj zapytania przygotowane z parametrami. Nie wstawiaj ich bezpośrednio do SQL przez konkatenację.

Przykład 1 — poznaj zapis

<?php
$pdo = new PDO("sqlite:app.sqlite");
$stmt = $pdo->prepare("SELECT * FROM users WHERE id = :id");
$stmt->execute(["id" => 5]);
$user = $stmt->fetch(PDO::FETCH_ASSOC);

Przykład wymaga pliku SQLite z tabelą users oraz włączonego sterownika PDO SQLite.

Przeczytaj kod linijka po linijce

  1. $pdo = new PDO("sqlite:app.sqlite");Tworzymy lub aktualizujemy zmienną, pole albo przypisanie.
  2. $stmt = $pdo->prepare("SELECT * FROM users WHERE id = :id");Tworzymy lub aktualizujemy zmienną, pole albo przypisanie.
  3. $user = $stmt->fetch(PDO::FETCH_ASSOC);Tworzymy lub aktualizujemy zmienną, pole albo przypisanie.
Oczekiwany wynik / efektpo uruchomieniu przykładu
Brak wypisanego tekstu; $user zawiera wynik zapytania albo false.

Przykład 2 — podobny problem, inne dane

Teraz przyjrzyj się drugiemu przykładowi. Zwróć uwagę na to, co zmieniło się w kodzie, a co w wyniku. Spróbuj przewidzieć rezultat przed przeczytaniem odpowiedzi.

<?php
$pdo = new PDO("sqlite::memory:");
$pdo->exec("CREATE TABLE tasks (id INTEGER PRIMARY KEY, title TEXT)");
echo "Tabela gotowa";
Wynik drugiego przykładupo uruchomieniu przykładu
Tabela gotowa (w pamięci bieżącego procesu)
Sprawdź, czy rozumiesz

Wróć do pierwszego przykładu, zmień jedną wartość i spróbuj samodzielnie przewidzieć wynik. Następnie uruchom kod i porównaj rezultat. W ten sposób nauczysz się nie tylko przepisywać instrukcje, ale rozumieć ich działanie.

Spróbuj samodzielnie

Przygotuj zapytanie filtrujące użytkowników po adresie e-mail.

To już koniec tej lekcji.

Jeśli rozumiesz przykład, oznacz lekcję jako ukończoną i przejdź dalej.