1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
| class DBPdo {
//! Database Host
var $DB_HOST = "";
//! Default Database
var $DB_NAME = "";
//! Database User
var $DB_USER = "";
//! Database Password
var $DB_PASS = "";
//! Database Handler
var $dbh;
//! Database Error
var $error = 0;
var $connected = false;
/**
* Construction / Connexion à la base PDO
*
* @return Nothing
*/
function __construct(){
$this->connect();
}
/**
* Connexion à la base PDO
*
* @return Nothing
*/
function connect(){
$this->connected=false;
try {
$this->dbh = new PDO('mysql:host=' . $this->DB_HOST . ';dbname=' . $this->DB_NAME, $this->DB_USER, Utils::strtr_cryptage( 'decode', Utils::setSecurity( 'decode', SECU_KEYPASS, $this->DB_PASS) ) ) or $this->getMessage();
if( $this->dbh ){ // connexion ok
$stmt = $this->dbh->query("SELECT COUNT(*) FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = '" . $this->DB_NAME . "'");
if( (bool) $stmt->fetchColumn() ){
$this->connected=true;
}
}
if( !$this->connected ){
$this->connected=false;
Display::displayPDOError( 'DBAccess', LANG_BDD_SQL_ERR );
$this->dbh = null;
die();
}
}
catch(PDOException $err) {
$this->connected=false;
Display::displayPDOError( $err->getCode(), $err->getMessage() );
$this->dbh = null;
die();
}
}
} |
Partager