From 260bc0637038f66d32a344dc27390fc3b3ffa3a2 Mon Sep 17 00:00:00 2001 From: franzz Date: Sun, 25 Nov 2018 15:44:16 +0100 Subject: [PATCH] add db state --- inc/db.php | 7 ++++++- inc/main.php | 2 +- index.php | 4 ++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/inc/db.php b/inc/db.php index e8e2837..5b4741a 100644 --- a/inc/db.php +++ b/inc/db.php @@ -10,10 +10,12 @@ class Db extends PhpObject const DB_PEACHY = 'NO_ERR'; const DB_NO_CONN = 'ERR_1'; const DB_NO_DATA = 'ERR_2'; + const DB_NO_TABLE = 'ERR_3'; const ID_TAG = 'id_'; //Database formats const MONTH_FORMAT = 'Ym'; + const DATE_FORMAT = 'Y-m-d'; const TIMESTAMP_FORMAT = 'Y-m-d H:i:s'; public $sDbState; @@ -63,6 +65,10 @@ class Db extends PhpObject $this->addError('Could not find database "'.$this->sDatabase.'"'); $this->sDbState = self::DB_NO_DATA; } + elseif(empty($this->getArrayQuery("SHOW TABLES"))) + { + $this->sDbState = self::DB_NO_TABLE; + } else $this->sDbState = self::DB_PEACHY; } } @@ -360,7 +366,6 @@ class Db extends PhpObject //Cleaning values $this->cleanSql($sTableName); - $this->cleanSql($iTableId); $this->cleanSql($asData); $this->cleanSql($asConstraints); $asQueryValues = $this->addQuotes($asData); diff --git a/inc/main.php b/inc/main.php index ad40bce..94ae3a9 100755 --- a/inc/main.php +++ b/inc/main.php @@ -64,7 +64,7 @@ abstract class Main extends PhpObject //$this->setLanguage($sLang); //$this->oTranslator = new Translator($this->getLanguage()); $this->oDb = new Db(Settings::DB_SERVER, Settings::DB_LOGIN, Settings::DB_PASS, Settings::DB_NAME, $this->getSqlOptions() , Settings::DB_ENC); - if($this->oDb->sDbState == Db::DB_NO_DATA) $this->install(); + if(in_array($this->oDb->sDbState, array(Db::DB_NO_DATA, Db::DB_NO_TABLE))) $this->install(); } protected abstract function install(); diff --git a/index.php b/index.php index 86f25c0..ecca8c5 100755 --- a/index.php +++ b/index.php @@ -64,10 +64,10 @@ elseif($sAction!='' && !$bLoggedIn) $sResult = $oCvTheque->apifunction(); break; default: - $sResult = CvTheque::getJsonResult(false, Main::NOT_FOUND); + $sResult = Main::getJsonResult(false, Main::NOT_FOUND); } } - else $sResult = CvTheque::getJsonResult(false, Main::UNAUTHORIZED); + else $sResult = Main::getJsonResult(false, Main::UNAUTHORIZED); } elseif($bLoggedIn) $sResult = $oMain->getMainPage(); else $sResult = $oMain->getLogonPage();