From 60e3bc781ea9e67cdc455094689aa07e0b92bbbc Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Tue, 30 Oct 2012 06:15:34 -0400 Subject: [PATCH] Fixed: FS#2509 - Intermittent 500 responses in access.log without corresponding entries in error.log --- interface/lib/classes/db_mysql.inc.php | 26 ++++++++++++++------------ 1 files changed, 14 insertions(+), 12 deletions(-) diff --git a/interface/lib/classes/db_mysql.inc.php b/interface/lib/classes/db_mysql.inc.php index 91b0286..d9b6600 100644 --- a/interface/lib/classes/db_mysql.inc.php +++ b/interface/lib/classes/db_mysql.inc.php @@ -47,16 +47,17 @@ public $show_error_messages = true; // false in server, true in interface // constructor - public function __construct() { + public function __construct($prefix = '') { global $conf; - $this->dbHost = $conf['db_host']; - $this->dbName = $conf['db_database']; - $this->dbUser = $conf['db_user']; - $this->dbPass = $conf['db_password']; - $this->dbCharset = $conf['db_charset']; - $this->dbNewLink = $conf['db_new_link']; - $this->dbClientFlags = $conf['db_client_flags']; - parent::__construct($conf['db_host'], $conf['db_user'],$conf['db_password'],$conf['db_database']); + if($prefix != '') $prefix .= '_'; + $this->dbHost = $conf[$prefix.'db_host']; + $this->dbName = $conf[$prefix.'db_database']; + $this->dbUser = $conf[$prefix.'db_user']; + $this->dbPass = $conf[$prefix.'db_password']; + $this->dbCharset = $conf[$prefix.'db_charset']; + $this->dbNewLink = $conf[$prefix.'db_new_link']; + $this->dbClientFlags = $conf[$prefix.'db_client_flags']; + parent::__construct($conf[$prefix.'db_host'], $conf[$prefix.'db_user'],$conf[$prefix.'db_password'],$conf[$prefix.'db_database']); if ($this->connect_error) { $this->updateError('DB::__construct'); return false; @@ -97,6 +98,7 @@ public function query($queryString) { $this->queryId = parent::query($queryString); $this->updateError('DB::query('.$queryString.') -> mysqli_query'); + if($this->errorNumber) debug_print_backtrace(); if(!$this->queryId) { return false; } @@ -297,7 +299,7 @@ $update_data_str = $update_data; } - $this->query("UPDATE $tablename SET $update_data WHERE $index_field = '$index_value'"); + $this->query("UPDATE $tablename SET $update_data_str WHERE $index_field = '$index_value'"); $new_rec = $this->queryOneRecord("SELECT * FROM $tablename WHERE $index_field = '$index_value'"); $this->datalogSave($tablename, 'UPDATE', $index_field, $index_value, $old_rec, $new_rec, $force_update); @@ -459,10 +461,10 @@ function tableInfo($table_name) { - global $go_api,$go_info; + global $go_api,$go_info,$app; // Tabellenfelder einlesen - if($rows = $go_api->db->queryAllRecords('SHOW FIELDS FROM '.$table_name)){ + if($rows = $app->db->queryAllRecords('SHOW FIELDS FROM '.$table_name)){ foreach($rows as $row) { $name = $row[0]; $default = $row[4]; -- Gitblit v1.9.1