Jak usunąć lub aktualizować wpis w bazie SQLite
Zawsze wszystko najlepiej widać na wybranym przykładzie, oto on:
Usuwamy wpis z bazy.
<?php $id = trim($_GET['id']); $baza = './bazy/test.db'; $db = sqlite_open($baza) or die('Nie mogę otworzyć bazy!'); /* usuwamy rekord */ sqlite_query($db,"DELETE FROM przyklad WHERE id='$id'") or die(sqlite_error_string(sqlite_last_error($db))); echo 'Dane zostały usunęte!'; /* zamykamy bazę */ sqlite_close($db); ?> |
Pobieramy rekord z bazy do aktualizacji.
<?php $id = trim($_GET['id']); $baza = './bazy/test.db'; $db = @sqlite_open($baza) or die('Nie mogę otworzyć bazy!'); /* odczytujemy zawartość tabeli */ $wynik = @sqlite_query($db,"SELECT * FROM przyklad WHERE id='$id'"); /* sprawdzamy czy tablica zawiera rekordy */ if(sqlite_num_rows($wynik) == 1) { $r = sqlite_fetch_array($wynik,SQLITE_ASSOC); echo '<form action="index.php?a=update" method="post"> <input type="hidden" name="id" value="'.$id.'" /> Imię lub nick: <input type="text" name="imie" value="'.$r['imie'].'" /> Adres e-mail: <input type="text" name="email" value="'.$r['email'].'" /> <input type="submit" value="wyślij" /> </form>'; } /* zamykamy bazę */ sqlite_close($db); ?> |
Zapisujemy zmodyfikowany rekord ponownie w bazie.
<?php $id = trim($_POST['id']); $baza = './bazy/test.db'; $db = sqlite_open($baza) or die('Nie mogę otworzyć bazy!'); /* odbieramy dane z formularza */ $imie = sqlite_escape_string(trim($_POST['imie'])); $email = sqlite_escape_string(trim($_POST['email'])); /* zapisujemy dane do bazy */ if($imie and $email) { sqlite_query($db,"UPDATE przyklad SET imie='$imie', email='$email' WHERE id='$id'") or die(sqlite_error_string(sqlite_last_error($db))); echo 'Dane zostały zapisane'; } else echo 'Wypełnij oba pola formularza!'; /* zamykamy bazę */ sqlite_close($db); ?> |
I tak oto mamy kompletny system zapisujący imię i adres e-mail do bazy SQLite.