query($sql); // exécution directe } else { $resultat = self::getBdd()->prepare($sql); // requête préparée $resultat->execute($params); } return $resultat; } private static function getBdd() { if (self::$bdd === null) { $dsn = Configuration::get("dsn"); $login = Configuration::get("login"); $mdp = Configuration::get("mdp"); self::$bdd = new PDO ( $dsn, $login, $mdp, array ( PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true ) ); // $pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false); } return self::$bdd; } private static function getBddAdmin() { if (!isset($_SESSION['codeBdd'])) { $_SESSION['codeBdd']="ebene"; } $dsn = $_SESSION['BdName']; $login = $_SESSION['BdLogin']; $mdp = $_SESSION['BdMdp']; self::$bdd = new PDO ( $dsn, $login, $mdp, array ( PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true ) ); return self::$bdd; } protected function dernierId() { return self::getBdd()->lastInsertId(); } protected function executerRequeteAdin($sql, $params = null) { if ($params == null) { $resultat = self::getBddAdmin()->query($sql); // exécution directe } else { $resultat = self::getBddAdmin()->prepare($sql); // requête préparée $resultat->execute($params); } return $resultat; } }