retrieve($table, 'COUNT(*) AS anzahl', $condition); $anzahl = (integer) $result[0]['anzahl']; return $anzahl; } /** * ID holen * * @param string $table Tabelle in der DB * @param string $condition Bedingung, mit der gesucht werden * @return integer */ public function find_id($table, $condition) { $result = $this->retrieve($table, 'id', $condition); $id = (integer) $result['id']; return $id; } /** * Zuletzt einfügte ID zurückgeben * * @param string $table * @return integer */ abstract public function last_insert_id($table); /** * Eindeutigen Bezeichner für eine Tabelle zurückgeben * * @param string $table * @return string */ abstract public function get_table_name($table); /** * Datenbankabfragen loggen */ protected function log_query($sql) { $this->lastSQL = $sql; $this->allSQL[] = $sql; $this->query_count++; } /** * Fehlermeldungen ausgeben und Ausführung stoppen * * @param string $error * @param string $sql */ protected function error($error, $sql) { if ( $this->show_errors OR ( error_reporting() > 0 AND ini_get('display_errors') == 1 ) ) { $factory = new fl_factory(); $err = $factory->get_helper('var_analyze', 'data-access', 'Fehler'); $err->sql($sql, 'Datenbankabfrage, die zu Fehler gefuehrt hat'); /** * Um mehr Informationen mit xDebug erhalten zu koennen, * das Datenbankobjekt in den lokalen Scope holen */ $database_object = $this; } throw new Exception($error); } } ?>