mirror of
https://github.com/phpbb/phpbb.git
synced 2025-07-30 21:40:43 +02:00
marge
git-svn-id: file:///svn/phpbb/trunk@8696 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
@@ -34,7 +34,7 @@ class dbal
|
||||
var $query_hold = '';
|
||||
var $html_hold = '';
|
||||
var $sql_report = '';
|
||||
|
||||
|
||||
var $persistency = false;
|
||||
var $user = '';
|
||||
var $server = '';
|
||||
@@ -47,7 +47,7 @@ class dbal
|
||||
var $sql_error_sql = '';
|
||||
// Holding the error information - only populated if sql_error_triggered is set
|
||||
var $sql_error_returned = array();
|
||||
|
||||
|
||||
// Holding transaction count
|
||||
var $transactions = 0;
|
||||
|
||||
@@ -146,7 +146,7 @@ class dbal
|
||||
{
|
||||
$this->sql_freeresult($query_id);
|
||||
}
|
||||
|
||||
|
||||
return $this->_sql_close();
|
||||
}
|
||||
|
||||
@@ -188,7 +188,7 @@ class dbal
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -303,7 +303,7 @@ class dbal
|
||||
* Build sql statement from array for insert/update/select statements
|
||||
*
|
||||
* Idea for this from Ikonboard
|
||||
* Possible query values: INSERT, INSERT_SELECT, MULTI_INSERT, UPDATE, SELECT
|
||||
* Possible query values: INSERT, INSERT_SELECT, UPDATE, SELECT
|
||||
*
|
||||
*/
|
||||
function sql_build_array($query, $assoc_ary = false)
|
||||
@@ -336,24 +336,7 @@ class dbal
|
||||
}
|
||||
else if ($query == 'MULTI_INSERT')
|
||||
{
|
||||
$ary = array();
|
||||
foreach ($assoc_ary as $id => $sql_ary)
|
||||
{
|
||||
// If by accident the sql array is only one-dimensional we build a normal insert statement
|
||||
if (!is_array($sql_ary))
|
||||
{
|
||||
return $this->sql_build_array('INSERT', $assoc_ary);
|
||||
}
|
||||
|
||||
$values = array();
|
||||
foreach ($sql_ary as $key => $var)
|
||||
{
|
||||
$values[] = $this->_sql_validate_value($var);
|
||||
}
|
||||
$ary[] = '(' . implode(', ', $values) . ')';
|
||||
}
|
||||
|
||||
$query = ' (' . implode(', ', array_keys($assoc_ary[0])) . ') VALUES ' . implode(', ', $ary);
|
||||
trigger_error('The MULTI_INSERT query value is no longer supported. Please use sql_multi_insert() instead.', E_USER_ERROR);
|
||||
}
|
||||
else if ($query == 'UPDATE' || $query == 'SELECT')
|
||||
{
|
||||
@@ -438,7 +421,25 @@ class dbal
|
||||
|
||||
if ($this->multi_insert)
|
||||
{
|
||||
$this->sql_query('INSERT INTO ' . $table . ' ' . $this->sql_build_array('MULTI_INSERT', $sql_ary));
|
||||
$ary = array();
|
||||
foreach ($sql_ary as $id => $_sql_ary)
|
||||
{
|
||||
// If by accident the sql array is only one-dimensional we build a normal insert statement
|
||||
if (!is_array($_sql_ary))
|
||||
{
|
||||
$query = $this->sql_build_array('INSERT', $sql_ary);
|
||||
break;
|
||||
}
|
||||
|
||||
$values = array();
|
||||
foreach ($_sql_ary as $key => $var)
|
||||
{
|
||||
$values[] = $this->_sql_validate_value($var);
|
||||
}
|
||||
$ary[] = '(' . implode(', ', $values) . ')';
|
||||
}
|
||||
|
||||
$this->sql_query('INSERT INTO ' . $table . ' ' . ' (' . implode(', ', array_keys($sql_ary[0])) . ') VALUES ' . implode(', ', $ary));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -703,7 +704,7 @@ class dbal
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
' . $this->html_hold . '
|
||||
|
||||
<p style="text-align: center;">
|
||||
@@ -731,24 +732,24 @@ class dbal
|
||||
case 'start':
|
||||
$this->query_hold = $query;
|
||||
$this->html_hold = '';
|
||||
|
||||
|
||||
$this->_sql_report($mode, $query);
|
||||
|
||||
$this->curtime = explode(' ', microtime());
|
||||
$this->curtime = $this->curtime[0] + $this->curtime[1];
|
||||
|
||||
break;
|
||||
|
||||
|
||||
case 'add_select_row':
|
||||
|
||||
$html_table = func_get_arg(2);
|
||||
$row = func_get_arg(3);
|
||||
|
||||
|
||||
if (!$html_table && sizeof($row))
|
||||
{
|
||||
$html_table = true;
|
||||
$this->html_hold .= '<table cellspacing="1"><tr>';
|
||||
|
||||
|
||||
foreach (array_keys($row) as $val)
|
||||
{
|
||||
$this->html_hold .= '<th>' . (($val) ? ucwords(str_replace('_', ' ', $val)) : ' ') . '</th>';
|
||||
@@ -764,7 +765,7 @@ class dbal
|
||||
$this->html_hold .= '<td class="' . $class . '">' . (($val) ? $val : ' ') . '</td>';
|
||||
}
|
||||
$this->html_hold .= '</tr>';
|
||||
|
||||
|
||||
return $html_table;
|
||||
|
||||
break;
|
||||
@@ -795,7 +796,7 @@ class dbal
|
||||
break;
|
||||
|
||||
default:
|
||||
|
||||
|
||||
$this->_sql_report($mode, $query);
|
||||
|
||||
break;
|
||||
|
Reference in New Issue
Block a user