forked from extern/egroupware
"added a query log, independent of the db used"
This commit is contained in:
parent
c0159b5466
commit
598a63379c
@ -108,11 +108,33 @@
|
|||||||
*/
|
*/
|
||||||
var $Error = '';
|
var $Error = '';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* eGW's own query log, independent of the db-type, eg. /tmp/query.log
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
var $query_log = '/tmp/query.log'; //false;
|
||||||
|
|
||||||
//i am not documenting private vars - skwashd :)
|
//i am not documenting private vars - skwashd :)
|
||||||
var $xmlrpc = False;
|
var $xmlrpc = False;
|
||||||
var $soap = False;
|
var $soap = False;
|
||||||
|
/**
|
||||||
|
* ADOdb connection
|
||||||
|
*
|
||||||
|
* @var ADOConnection
|
||||||
|
*/
|
||||||
var $Link_ID = 0;
|
var $Link_ID = 0;
|
||||||
|
/**
|
||||||
|
* ADOdb connection
|
||||||
|
*
|
||||||
|
* @var ADOConnection
|
||||||
|
*/
|
||||||
var $privat_Link_ID = False; // do we use a privat Link_ID or a reference to the global ADOdb object
|
var $privat_Link_ID = False; // do we use a privat Link_ID or a reference to the global ADOdb object
|
||||||
|
/**
|
||||||
|
* ADOdb record set of the current query
|
||||||
|
*
|
||||||
|
* @var ADORecordSet
|
||||||
|
*/
|
||||||
var $Query_ID = 0;
|
var $Query_ID = 0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -358,7 +380,7 @@
|
|||||||
case 'maxdb': // if Lim ever changes it to maxdb ;-)
|
case 'maxdb': // if Lim ever changes it to maxdb ;-)
|
||||||
case 'sapdb':
|
case 'sapdb':
|
||||||
$this->capabilities['distinct_on_text'] = false;
|
$this->capabilities['distinct_on_text'] = false;
|
||||||
$this->capabilities['like_on_text'] = (float) $db_version >= 7.6;
|
$this->capabilities['like_on_text'] = $db_version >= 7.6;
|
||||||
$this->capabilities['order_on_text'] = false;
|
$this->capabilities['order_on_text'] = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -496,7 +518,17 @@
|
|||||||
$this->Errno = $this->Link_ID->ErrorNo();
|
$this->Errno = $this->Link_ID->ErrorNo();
|
||||||
$this->Error = $this->Link_ID->ErrorMsg();
|
$this->Error = $this->Link_ID->ErrorMsg();
|
||||||
|
|
||||||
if (! $this->Query_ID)
|
if ($this->query_log && ($f = @fopen($this->query_log,'a+')))
|
||||||
|
{
|
||||||
|
fwrite($f,'['.(isset($GLOBALS['egw_setup']) ? $GLOBALS['egw_setup']->ConfigDomain : $GLOBALS['egw_info']['user']['domain']).'] ');
|
||||||
|
fwrite($f,date('Y-m-d H:i:s ').$Query_String.($inputarr ? "\n".print_r($inputarr,true) : '')."\n");
|
||||||
|
if (!$this->Query_ID)
|
||||||
|
{
|
||||||
|
fwrite($f,"*** Error $this->Errno: $this->Error\n".function_backtrace()."\n");
|
||||||
|
}
|
||||||
|
fclose($f);
|
||||||
|
}
|
||||||
|
if (!$this->Query_ID)
|
||||||
{
|
{
|
||||||
$this->halt("Invalid SQL: ".(is_array($Query_String)?$Query_String[0]:$Query_String).
|
$this->halt("Invalid SQL: ".(is_array($Query_String)?$Query_String[0]:$Query_String).
|
||||||
($inputarr ? "<br>Parameters: '".implode("','",$inputarr)."'":''),
|
($inputarr ? "<br>Parameters: '".implode("','",$inputarr)."'":''),
|
||||||
@ -1160,7 +1192,10 @@
|
|||||||
{
|
{
|
||||||
case 'int':
|
case 'int':
|
||||||
case 'auto':
|
case 'auto':
|
||||||
return (int) $value;
|
// atm. (php5.2) php has only 32bit integers, it converts everything else to float.
|
||||||
|
// Casting it to int gives a negative number instead of the big 64bit integer!
|
||||||
|
// There for we have to keep it as float by using round instead the int cast.
|
||||||
|
return is_float($value) ? round($value) : (int) $value;
|
||||||
case 'bool':
|
case 'bool':
|
||||||
if ($this->Type == 'mysql') // maybe it's not longer necessary with mysql5
|
if ($this->Type == 'mysql') // maybe it's not longer necessary with mysql5
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user