SQLite 3 databases.. met php
dit heb ik gevonden.. Iemand ervaring met deze package??
http://sourceforge.net/projects/php-sqlite3/
Ik zou graag mijn sqlite database willen onderhouden met
SQLite managers addon voor FF.. maar deze ondersteund alleen SQLite3 .
https://addons.mozilla.org/en-US/firefox/addon/5817
Wanneer je PDO_SQLite gebruikt, oftewel SQLite via PDO dan heb je standaard te maken met versie 3. De sqlite_* functies van PHP zijn inderdaad nog beperkt tot versie 2, maar de PDO driver doet vreemd genoeg wel gewoon 3.
Dan worden de databases die aangemaakt worden door PDO niet ondersteund door de SQLite manager.. ;( en anders om
Welke foutmelding krijg je? Heb je een recente versie van PHP en van de pdo_sqlite.dll driver? Is je Firefox plugin up to date? Is de map waarin het sqlite bestand staat schrijfbaar en het bestand zelf ook voor zowel PHP als voor jezelf (natuurlijk alleen van toepassing wanneer je op Linux o.i.d. werkt)
FF addon is gelijk aan die van jou maar dan Firefox/2.0.0.14..
alles in windows..
Ik had deze package gevonden maar ik weet niet hoe ik deze moet gebruiken.. eerlijk gezegd ook nog niet de tijd voor genomen..
http://pecl.php.net/package/PDO_SQLITE
Op de xampp website staat wel een up to date XAMPP Lite, met PHP 5.2.5. Ik denk dat dat je beste kans is. Ik kan nergens terug vinden sinds welke versie van PHP SQLite 3 beschikbaar is, maar volgens mij is de PDO driver al sinds het begin vooral op SQLite 3 gericht, en sinds 5.1 kan hij ook omgaan met SQLite 2 bestanden.
Ik ben toch nog wel nieuwsgierig naar de foutmelding.
Erro opening file db.sqlite - perhaps is not an db file.
Exception name NS_ERROR_FILE_CORRUPTED
EXCEPTION message Component returned failere code 0X805000b
XamppLite.. package:
XAMPP Lite is a very reduced version of XAMPP with Apache 2.2.8 + PHP 5.2.5 + MySQL 5.0.51a + phpMyAdmin 2.11.4 + OpenSSL 0.9.8g + SQLite 2.8.15. For lovers! For the lite versions exist no upgrades or addons. XAMPP Lite is an only "Take-Run-Delete-Forget-it" package.
SQLite 2.8.15 staat deze lost van de PDO_SQLITE driver?
Heb nog het een en ander getest maar ik krijg een fout melding nadat ik een database heb aangemaakt met PDO OF SQLiteDatabase klasse, daarna heb ik records en tables toegevoegd via Sqlite manager ( ff addon )..
Warning: sqlite_open() [function.sqlite-open]: file is encrypted or is not a database in E:\Webserver\xampplite2\htdocs\test.php on line 7
Zowel bij:
sqlite_open()
PDO : sqlite2
SQLiteDatabase()
Bekend?
Dit script draai ik:
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?php
$x = new PDO('sqlite:/Users/Jelmer/Desktop/test.sqlite');
$x->query("
CREATE TABLE test (
a INTEGER PRIMARY KEY NOT NULL DEFAULT '',
b VARCHAR DEFAULT '',
c DATETIME DEFAULT CURRENT_DATE
)
");
?>
$x = new PDO('sqlite:/Users/Jelmer/Desktop/test.sqlite');
$x->query("
CREATE TABLE test (
a INTEGER PRIMARY KEY NOT NULL DEFAULT '',
b VARCHAR DEFAULT '',
c DATETIME DEFAULT CURRENT_DATE
)
");
?>
Resultaat: test.sqlite. En dat bestand werkt bij mij gewoon in SQLiteManager.
Mijn phpinfo: phpinfo.txt
Gewijzigd op 01/01/1970 01:00:00 door Jelmer -
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
echo '<pre>';
print_r(PDO::getAvailableDrivers());
echo '</pre>';
try{
$dbhandle = new PDO('sqlite:sqlitedb');
//$dbhandle->query('CREATE TABLE test ( test1 VARCHAR, test2 VARCHAR )');
//$dbhandle->query('INSERT INTO test (test1,test2) VALUES("poepoep","ggggpgpgpg")');
$result =$dbhandle->query('SELECT * FROM test');
foreach($results as $row)
{
echo $row['test1'].'<br>';
echo $row['test2'].'<br>';
}
}catch(Exception $e){
print $e->getmessage();
}
?>
Hier bij krijg ik de melding : could not find driver
met [new PDO('sqlite2:sqlitedb');] werk hij wel, maar dan moet ik hem niet openen met sqlitemanager want daarna krijg ik de melding dat deze data base s encrypted o.i.d
echo '<pre>';
print_r(PDO::getAvailableDrivers());
echo '</pre>';
try{
$dbhandle = new PDO('sqlite:sqlitedb');
//$dbhandle->query('CREATE TABLE test ( test1 VARCHAR, test2 VARCHAR )');
//$dbhandle->query('INSERT INTO test (test1,test2) VALUES("poepoep","ggggpgpgpg")');
$result =$dbhandle->query('SELECT * FROM test');
foreach($results as $row)
{
echo $row['test1'].'<br>';
echo $row['test2'].'<br>';
}
}catch(Exception $e){
print $e->getmessage();
}
?>
Hier bij krijg ik de melding : could not find driver
met [new PDO('sqlite2:sqlitedb');] werk hij wel, maar dan moet ik hem niet openen met sqlitemanager want daarna krijg ik de melding dat deze data base s encrypted o.i.d
Typisch genoeg werkt sqlite2 hier dan weer niet, heb de driver niet :P
http://otfans.net/showthread.php?t=67804
http://www.suseforums.net/index.php?showtopic=49051&mode=threaded&pid=241373
Ben het nu aan het testen...
Edit:
het ligt gewoon aan Xampp. die hebben de driver niet of incorrect geinstalleerd
Gewijzigd op 01/01/1970 01:00:00 door Andreas Warnaar