mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-29 06:38:52 +00:00
First commit of updated forums management panel - crossing fingers
git-svn-id: file:///svn/phpbb/trunk@2888 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
parent
0226e8602a
commit
8d6c391d48
2 changed files with 912 additions and 857 deletions
File diff suppressed because it is too large
Load diff
|
@ -172,27 +172,50 @@ class sql_db
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( strpos(' ' . $query, 'INSERT') == 1 )
|
if (preg_match('/^INSERT/', $query))
|
||||||
{
|
{
|
||||||
$fields = '';
|
$fields = array();
|
||||||
$values = '';
|
$values = array();
|
||||||
foreach ($assoc_ary as $key => $var)
|
foreach ($assoc_ary as $key => $var)
|
||||||
{
|
{
|
||||||
$fields .= ( ( $fields != '' ) ? ', ' : '' ) . $key;
|
$fields[] = $key;
|
||||||
$values .= ( ( $values != '' ) ? ', ' : '' ) . ( ( is_string($var) ) ? '\'' . str_replace('\'', '\'\'', $var) . '\'' : $var );
|
|
||||||
}
|
|
||||||
|
|
||||||
$query = $query . ' (' . $fields . ') VALUES (' . $values . ')';
|
if (is_null($var))
|
||||||
|
{
|
||||||
|
$values[] = 'NULL';
|
||||||
|
}
|
||||||
|
elseif (is_string($var))
|
||||||
|
{
|
||||||
|
$values[] = str_replace("'", "''", $var);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$values = '';
|
$values[] = $var;
|
||||||
foreach ( $assoc_ary as $key => $var )
|
}
|
||||||
{
|
|
||||||
$values .= ( ( $values != '' ) ? ', ' : '' ) . $key . ' = ' . ( ( is_string($var) ) ? '\'' . str_replace('\'', '\'\'', $var) . '\'' : $var );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$query = preg_replace('/^(.*? SET )(.*?)$/is', '\1' . $values . ' \2', $query);
|
$query = $query . ' (' . implode(', ', $fields) . ') VALUES (' . implode(', ', $values) . ')';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$values = array();
|
||||||
|
foreach ($assoc_ary as $key => $var)
|
||||||
|
{
|
||||||
|
if ($var == NULL)
|
||||||
|
{
|
||||||
|
$values[] = "$key = NULL";
|
||||||
|
}
|
||||||
|
elseif (is_string($var))
|
||||||
|
{
|
||||||
|
$values[] = "$key = '" . str_replace("'", "''", $var) . "'";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$values[] = "$key = $var";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$query = preg_replace('/^(.*? SET )(.*?)$/is', '\1' . implode(', ', $values) . ' \2', $query);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $this->sql_query($query);
|
return $this->sql_query($query);
|
||||||
|
|
Loading…
Add table
Reference in a new issue