mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-17 02:10:02 +09:00
68, 69번 티켓 이슈 수정. update문 select *문 오류 수정
git-svn-id: http://xe-core.googlecode.com/svn/trunk@1937 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
aa9b51fcac
commit
4f6324e9eb
1 changed files with 58 additions and 4 deletions
|
|
@ -143,6 +143,7 @@
|
|||
* return\n
|
||||
**/
|
||||
function _query($query) {
|
||||
//echo "(((".$this->backtrace().")))";
|
||||
if(!$query || !$this->isConnected()) return;
|
||||
|
||||
// 쿼리 시작을 알림
|
||||
|
|
@ -383,7 +384,7 @@
|
|||
function _executeUpdateAct($output) {
|
||||
// 테이블 정리
|
||||
foreach($output->tables as $key => $val) {
|
||||
$table_list[] = '`'.$this->prefix.$key.'` as '.$val;
|
||||
$table_list[] = "\"".$this->prefix.$key."\" as ".$val;
|
||||
}
|
||||
|
||||
// 컬럼 정리
|
||||
|
|
@ -396,7 +397,7 @@
|
|||
if($output->column_type[$name]!='number') $value = "'".$this->addQuotes($value)."'";
|
||||
elseif(!$value || is_numeric($value)) $value = (int)$value;
|
||||
|
||||
$column_list[] = sprintf("`%s` = %s", $name, $value);
|
||||
$column_list[] = sprintf("\"%s\" = %s", $name, $value);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -453,8 +454,9 @@
|
|||
} else {
|
||||
if(strpos($name,'.')!=false) {
|
||||
list($prefix, $name) = explode('.',$name);
|
||||
if($alias) $column_list[] = sprintf('%s."%s" as "%s"', $prefix, $name, $alias);
|
||||
else $column_list[] = sprintf('%s."%s"',$prefix,$name);
|
||||
$deli=($name == '*') ? "" : "\"";
|
||||
if($alias) $column_list[] = sprintf("%s.$deli%s$deli as \"%s\"", $prefix, $name, $alias);
|
||||
else $column_list[] = sprintf("%s.$deli%s$deli",$prefix,$name);
|
||||
} else {
|
||||
if($alias) $column_list[] = sprintf('%s as "%s"', $name, $alias);
|
||||
else $column_list[] = sprintf('%s',$name);
|
||||
|
|
@ -488,6 +490,58 @@
|
|||
return $buff;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 현재 시점의 Stack trace를 보여줌.결과를 fetch
|
||||
**/
|
||||
function backtrace()
|
||||
{
|
||||
$output = "<div style='text-align: left;'>\n";
|
||||
$output .= "<b>Backtrace:</b><br />\n";
|
||||
$backtrace = debug_backtrace();
|
||||
|
||||
foreach ($backtrace as $bt) {
|
||||
$args = '';
|
||||
foreach ($bt['args'] as $a) {
|
||||
if (!empty($args)) {
|
||||
$args .= ', ';
|
||||
}
|
||||
switch (gettype($a)) {
|
||||
case 'integer':
|
||||
case 'double':
|
||||
$args .= $a;
|
||||
break;
|
||||
case 'string':
|
||||
$a = htmlspecialchars(substr($a, 0, 64)).((strlen($a) > 64) ? '...' : '');
|
||||
$args .= "\"$a\"";
|
||||
break;
|
||||
case 'array':
|
||||
$args .= 'Array('.count($a).')';
|
||||
break;
|
||||
case 'object':
|
||||
$args .= 'Object('.get_class($a).')';
|
||||
break;
|
||||
case 'resource':
|
||||
$args .= 'Resource('.strstr($a, '#').')';
|
||||
break;
|
||||
case 'boolean':
|
||||
$args .= $a ? 'True' : 'False';
|
||||
break;
|
||||
case 'NULL':
|
||||
$args .= 'Null';
|
||||
break;
|
||||
default:
|
||||
$args .= 'Unknown';
|
||||
}
|
||||
}
|
||||
$output .= "<br />\n";
|
||||
$output .= "<b>file:</b> {$bt['line']} - {$bt['file']}<br />\n";
|
||||
$output .= "<b>call:</b> {$bt['class']}{$bt['type']}{$bt['function']}($args)<br />\n";
|
||||
}
|
||||
$output .= "</div>\n";
|
||||
return $output;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief query xml에 navigation 정보가 있을 경우 페이징 관련 작업을 처리한다
|
||||
*
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue