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.

 

Projekt © 2009 - INFOPROG 67905 odwiedzin