aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authornikrou <nikrou@piwigo.org>2010-01-29 11:36:54 +0000
committernikrou <nikrou@piwigo.org>2010-01-29 11:36:54 +0000
commit20b58c53cd48bad8160f614ed1ffec90d511b099 (patch)
treea0c1303d77ea816189c020f49926813b06724523 /include
parent386864cd2612ac743e182253541bddfebed80606 (diff)
Feature 511 : improve installation for sqlite
fatal error if database cannot be accessed fix problem with booleans git-svn-id: http://piwigo.org/svn/trunk@4791 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to 'include')
-rw-r--r--include/dblayer/functions_sqlite.inc.php26
1 files changed, 22 insertions, 4 deletions
diff --git a/include/dblayer/functions_sqlite.inc.php b/include/dblayer/functions_sqlite.inc.php
index ede8b7521..6acef3afd 100644
--- a/include/dblayer/functions_sqlite.inc.php
+++ b/include/dblayer/functions_sqlite.inc.php
@@ -39,7 +39,20 @@ function pwg_db_connect($host, $user, $password, $database)
$db_file = sprintf('%s/%s.db', $conf['local_data_dir'], $database);
- $link = new SQLite3($db_file);
+ if (script_basename()=='install')
+ {
+ $sqlite_open_mode = SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE;
+ }
+ else
+ {
+ $sqlite_open_mode = SQLITE3_OPEN_READWRITE;
+ }
+ try {
+ $link = new SQLite3($db_file, $sqlite_open_mode);
+ } catch (Exception $e) {
+ my_error('sqlite::open', true);
+ }
+
$link->createFunction('now', 'pwg_now', 0);
$link->createFunction('md5', 'md5', 1);
@@ -417,7 +430,7 @@ function get_enums($table, $field)
function get_boolean( $string )
{
$boolean = true;
- if ('f' == $string || 'false' == $string)
+ if ('f' === $string || 'false' === $string)
{
$boolean = false;
}
@@ -432,7 +445,7 @@ function get_boolean( $string )
*/
function boolean_to_string($var)
{
- if (!empty($var) && ($var == 't'))
+ if (!empty($var) && ($var == 'true'))
{
return 'true';
}
@@ -512,7 +525,12 @@ function my_error($header, $die)
{
global $pwg_db_link;
- $error = '[sqlite error]'.$pwg_db_link->lastErrorMsg()."\n";
+ $error = '';
+ if (isset($pwg_db_link))
+ {
+ $error .= '[sqlite error]'.$pwg_db_link->lastErrorMsg()."\n";
+ }
+
$error .= $header;
if ($die)