Edit report at http://bugs.php.net/bug.php?id=49518&edit=1
ID: 49518
Comment by: pbrun dot pro at gmail dot com
Reported by: wjzhhr at gmail dot com
Summary: can't open encrypted sqlite3 database
Status: Bogus
Type: Bug
Package: SQLite related
Operating System: windwos xp
PHP Version: 5.3.0
Block user comment: N
Private report: N
New Comment:
How create a SQLite database can open by php ?
i use :
$db = new SQLite3('test2.sqlite',SQLITE3_OPEN_CREATE,'test');
But the SQLite database create is not encrypted.
Previous Comments:
------------------------------------------------------------------------
[2009-09-11 01:50:22] [email protected]
wxsqlite3 contains a custom encryption layer that isn't part of the
standard SQLite3 library which PHP includes.
------------------------------------------------------------------------
[2009-09-11 00:45:23] wjzhhr at gmail dot com
I use wxsqlite3-1.9.5 to create sqlite3 database, and the key is 1.
if I use sqlite3shell.exe open "x.db",the result will right.
I never use sqlite2,always use sqlite3.
------------------------------------------------------------------------
[2009-09-10 13:12:05] [email protected]
Pretty sure wxSQLite is SQLite2 and you need wxSQLite3.
------------------------------------------------------------------------
[2009-09-10 09:58:52] [email protected]
Does it work when you supply the right encryption key as the third
parameter?
SQLite3::__construct ( string $filename [, int $flags [, string
$encryption_key ]] )
------------------------------------------------------------------------
[2009-09-10 08:15:49] wjzhhr at gmail dot com
Description:
------------
can't open encrypted database which created by wxSQLite.
<?php
$db = new SQLite3('x.db',SQLITE3_OPEN_READONLY,"1");
$db->exec("PRAGMA KEY='1'");
$result = $db->query('SELECT * FROM xxx');
var_dump($result->fetchArray());
?>
Warning: SQLite3::query(): Unable to prepare statement: 26, file is
encrypted or is not a database
Reproduce code:
---------------
---
>From manual page: sqlite3.open
---
Expected result:
----------------
my table: CREATE TABLE xxx(iswho text,itimes int);
liming|1
xiaojie|2
two records.
Expected result:
array(4) {
[0]=>
string(6) "liming"
["iswho"]=>
string(6) "liming"
[1]=>
int(1)
["itimes"]=>
int(1)
}
Actual result:
--------------
Warning: SQLite3::query(): Unable to prepare statement: 26, file is
encrypted or is not a database
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/bug.php?id=49518&edit=1