public function __construct(DBConnect $dbConnect) { $this->dbConnect = $dbConnect; try { parent::__construct('mysql:host=' . $dbConnect->getHost() . ';dbname=' . $dbConnect->getDatabase() . ($dbConnect->getCharset() !== null ? ';charset=' . $dbConnect->getCharset() : null), $dbConnect->getUsername(), $dbConnect->getPassword()); $this->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION); $this->setAttribute(\PDO::ATTR_EMULATE_PREPARES, false); if (($charset = $dbConnect->getCharset()) !== null) { $this->query("SET NAMES '" . $charset . "'"); $this->query("SET CHARSET '" . $charset . "'"); } $this->triggerListeners('onConnect', array($this, $this->dbConnect)); } catch (\PDOException $e) { throw new DBException($e); } }
<?php /** * This file is outdated, but still needed by parts of the program * They use "global $db" to get access to the database * @todo: Remove this file and replace the occurences with DBConnect.php and the Class DBConnect */ require_once dirname(__FILE__) . '/DBConnect.php'; // $dbObject = new DBConnect($host, $username, $password, $database); $dbObject = new DBConnect(); $dbObject->initDatabaseFromXML(); $db = $dbObject->getDatabase();
/** * Enter description here... */ function navBar($showPage, $table, $headmod, $mod, $action, $filter) { require_once 'sql_access/DBConnect.php'; $dbObject = new DBConnect(); $dbObject->initDatabaseFromXML(); $db = $dbObject->getDatabase(); $db->query('set names "utf8";'); $query = sql_prev_inj(sprintf('SELECT COUNT(*) AS total FROM %s', $table)); $result = $db->query($query); if (!$result) { throw new Exception('Fehler: Nichts gefunden!'); } $row = $result->fetch_array(MYSQLI_ASSOC); $maxPages = ceil($row['total'] / 10); $string = ""; if ($showPage > 1) { $string .= '<a href="?sitePointer=1§ion=' . $headmod . '|' . $mod . '&filter=' . $filter . '&action=' . $action . '"><<</a> '; $string .= '<a href="?sitePointer=' . ($showPage - 1) . '§ion=' . $headmod . '|' . $mod . '&filter=' . $filter . '&action=' . $action . '"><</a> '; } for ($x = $showPage - 5; $x <= $showPage + 5; $x++) { if ($x > 0 && $x < $showPage || $x > $showPage && $x <= $maxPages) { $string .= '<a href="?sitePointer=' . $x . '§ion=' . $headmod . '|' . $mod . '&filter=' . $filter . '&action=' . $action . '">' . $x . '</a> '; } if ($x == $showPage) { $string .= $x . ' '; } } if ($showPage < $maxPages) { $string .= '<a href="?sitePointer=' . ($showPage + 1) . '§ion=' . $headmod . '|' . $mod . '&filter=' . $filter . '&action=' . $action . '">></a> '; $string .= '<a href="?sitePointer=' . $maxPages . '§ion=' . $headmod . '|' . $mod . '&filter=' . $filter . '&action=' . $action . '">>></a> '; } return $string; }
/** * Inits the Database of this Class */ protected static function dbInit() { if (!isset(self::$db)) { $dbObject = new DBConnect(); $dbObject->initDatabaseFromXML(); self::$db = $dbObject->getDatabase(); self::$db->query('set names "utf8";'); } }