From 5fb0a2785718160317069c87496d1602e32ea3d6 Mon Sep 17 00:00:00 2001 From: polo Date: Wed, 14 Aug 2024 17:20:10 +0200 Subject: autoload avec composer --- old/model version 0.1/DB.php | 48 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 old/model version 0.1/DB.php (limited to 'old/model version 0.1/DB.php') diff --git a/old/model version 0.1/DB.php b/old/model version 0.1/DB.php new file mode 100644 index 0000000..47407ba --- /dev/null +++ b/old/model version 0.1/DB.php @@ -0,0 +1,48 @@ + PDO::$dsn + //$this->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, 'SET NAMES utf8'); // pour mysql/mariadb + $this->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // $this pour la méthode du parent PDO + $this->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); // pour PDO:fetch() et PDO::fetchAll() + // avec PDO::FETCH_ASSOC on obtient un tableau associatif, marche très bien puisqu'on utilise déjà des ID avec incrémentation automatique + // avec PDO::FETCH_BOTH (par défaut) on récupère les données en double (identifiants partant de 0 + tableau associatif) + } + catch(PDOException $e) + { + die("Impossible de se connecter à la base de données.\n" . $e->getMessage()); + } + } + + // créer son objet depuis Model avec: $db = parent::getInstance(); + public static function getInstance(): self + { + if(self::$Instance === null) + { + self::$Instance = new self; + } + return self::$Instance; + } +} -- cgit v1.2.3