Autor | Zpráva | ||
---|---|---|---|
martin2 Profil * |
#1 · Zasláno: 1. 5. 2012, 16:02:07
Ahoj, snazim se zapsat data do SQLITE3 databaze.
Cteni funguje bez problemu, ale kdyz do db neco zkusim zapsat, tak se to nezapise. Kdyz v prohlizeci otevru php skript, dobu to pise "cekani na localhost" a v adresari "test" se obejvi soubor "client.sqlite-journal" a jinak to nic nedela. Kdyz ale vygenerovane prikazy dam do schranky a spustim v http://sqlitebrowser.sourceforge.net/ tak funguji. Prava k souborum by mela byt v poradku: martin@martin ~/klient $ ls -lh celkem 92K drwxrwxrwx 2 martin martin 4,0K 2012-05-01 15:40 test martin@martin ~/klient $ ls -lh test/ celkem 24K -rw-rw-rw- 1 martin martin 3,0K 2012-04-30 00:10 client.sqlite -rw-rw-r-- 1 martin martin 716 2012-05-01 15:50 dbtest.php martin@martin ~/klient $ Skript: <?php $heslo = "12345"; $id = "1"; try { $db = new PDO('sqlite:client.sqlite'); echo ("SELECT id, pass, startTime FROM client WHERE pass='".$heslo."' LIMIT 1"); echo "<br/>"; $dotaz = $db->query("SELECT id, pass, startTime FROM client WHERE pass='".$heslo."' LIMIT 1"); foreach ($dotaz as $row) { if ( strtotime($row["startTime"]) < time() ) { echo "ID=".$row["id"]." PASS=".$row["pass"]." STARTTIME=".$row["startTime"]; echo "<br/>"; echo ("UPDATE client SET startTime='".date('c')."' WHERE id='".$id."'"); echo "<br/>"; $db->query("UPDATE client SET startTime='".date('c')."' WHERE id='".$id."'"); } } $db = NULL; } catch(PDOException $e) { print 'Exception : '.$e->getMessage(); } ?> Skript vygenruje stranku: SELECT id, pass, startTime FROM client WHERE pass='12345' LIMIT 1 ID=1 PASS=12345 STARTTIME= UPDATE client SET startTime='2012-05-01T15:55:09+02:00' WHERE id='123' Kde by mohla byt chyba? |
||
Davex Profil |
#2 · Zasláno: 1. 5. 2012, 18:38:03
Chyba by mohla být v tom, že se díváš na jiný soubor než spouštíš, protože se neznámo kde bere hodnota
$id = 123 , která se ale v tomto skriptu nastavuje na $id = 1 .
|
||
Časová prodleva: 12 let
|
0