From 68857cea8c08aab54c632d63f4526d0bb16f80d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Wed, 7 Aug 2013 14:38:58 +0200 Subject: [PATCH] setup of storage --- inc/poche/Database.class.php | 33 +++++++++++++++++---------------- inc/poche/config.inc.php | 9 ++++++++- 2 files changed, 25 insertions(+), 17 deletions(-) diff --git a/inc/poche/Database.class.php b/inc/poche/Database.class.php index a226b31..034b100 100644 --- a/inc/poche/Database.class.php +++ b/inc/poche/Database.class.php @@ -9,24 +9,25 @@ */ class Database { - - #postgresql - public static $db_path = 'pgsql:host=localhost;dbname=poche'; - public static $user = 'postgres'; - public static $password = 'postgres'; - #sqlite - // public static $db_path = 'sqlite:./db/poche.sqlite'; - // public static $user = ''; - // public static $password = ''; - #mysql - // public static $db_path = 'mysql:host=localhost;dbname=poche'; - // public static $user = 'root'; - // public static $password = 'root'; - var $handle; - function __construct() { - $this->handle = new PDO(self::$db_path, self::$user, self::$password); + function __construct() + { + switch (STORAGE) { + case 'sqlite': + $db_path = 'sqlite:' . STORAGE_SQLITE; + $this->handle = new PDO($db_path); + break; + case 'mysql': + $db_path = 'mysql:host=' . STORAGE_SERVER . ';dbname=' . STORAGE_DB; + $this->handle = new PDO($db_path, STORAGE_USER, STORAGE_PASSWORD); + break; + case 'postgres': + $db_path = 'pgsql:host=' . STORAGE_SERVER . ';dbname=' . STORAGE_DB; + $this->handle = new PDO($db_path, STORAGE_USER, STORAGE_PASSWORD); + break; + } + $this->handle->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } diff --git a/inc/poche/config.inc.php b/inc/poche/config.inc.php index 834b18e..ef2f699 100644 --- a/inc/poche/config.inc.php +++ b/inc/poche/config.inc.php @@ -8,6 +8,14 @@ * @license http://www.wtfpl.net/ see COPYING file */ +# storage +define ('STORAGE','postgres'); # postgres, mysql, sqlite +define ('STORAGE_SERVER', 'localhost'); # leave blank for sqlite +define ('STORAGE_DB', 'poche'); # only for postgres & mysql +define ('STORAGE_SQLITE', './db/poche.sqlite'); +define ('STORAGE_USER', 'postgres'); # leave blank for sqlite +define ('STORAGE_PASSWORD', 'postgres'); # leave blank for sqlite + define ('POCHE_VERSION', '1.0-beta'); define ('MODE_DEMO', FALSE); define ('DEBUG_POCHE', TRUE); @@ -24,7 +32,6 @@ define ('CACHE', './cache'); define ('LANG', 'en_EN.UTF8'); define ('PAGINATION', '10'); define ('THEME', 'light'); -define ('STORAGE','postgres'); # postgres, mysql, sqlite # /!\ Be careful if you change the lines below /!\ require_once './inc/poche/User.class.php';