mirror of
https://github.com/e107inc/e107.git
synced 2025-07-31 11:50:30 +02:00
Tidy up DB query (thanks MrPete), eliminate DB errors
This commit is contained in:
56
class2.php
56
class2.php
@@ -11,9 +11,9 @@
|
|||||||
| GNU General Public License (http://gnu.org).
|
| GNU General Public License (http://gnu.org).
|
||||||
|
|
|
|
||||||
| $Source: /cvs_backup/e107_0.8/class2.php,v $
|
| $Source: /cvs_backup/e107_0.8/class2.php,v $
|
||||||
| $Revision: 1.10 $
|
| $Revision: 1.11 $
|
||||||
| $Date: 2007-01-20 14:55:06 $
|
| $Date: 2007-02-03 12:43:53 $
|
||||||
| $Author: mrpete $
|
| $Author: e107steved $
|
||||||
+----------------------------------------------------------------------------+
|
+----------------------------------------------------------------------------+
|
||||||
*/
|
*/
|
||||||
//
|
//
|
||||||
@@ -1012,32 +1012,34 @@ function get_user_data($uid, $extra = "")
|
|||||||
|
|
||||||
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||||
|
|
||||||
function save_prefs($table = 'core', $uid = USERID, $row_val = '') {
|
function save_prefs($table = 'core', $uid = USERID, $row_val = '')
|
||||||
global $pref, $user_pref, $tp, $PrefCache, $sql, $eArrayStorage;
|
{
|
||||||
if ($table == 'core') {
|
global $pref, $user_pref, $tp, $PrefCache, $sql, $eArrayStorage;
|
||||||
if ($row_val == '') {
|
if ($table == 'core')
|
||||||
// Save old version as a backup
|
{
|
||||||
if(!$sql->db_Update('core', "e107_value='".addslashes($PrefCache)."' WHERE e107_name='SitePrefs_Backup'")){
|
if ($row_val == '')
|
||||||
$sql->db_Insert('core', "'SitePrefs', '".addslashes($PrefCache)."'");
|
{ // Save old version as a backup first
|
||||||
}
|
$msqlPrefCache=addslashes($PrefCache);
|
||||||
|
$sql->db_Select_gen("INSERT INTO #core (e107_name,e107_value) values ('SitePrefs_Backup', '{$msqlPrefCache}')
|
||||||
|
ON DUPLICATE KEY UPDATE e107_value='{$msqlPrefCache}'");
|
||||||
|
|
||||||
// traverse the pref array, with toDB on everything
|
// Now save the updated values
|
||||||
$_pref = $tp -> toDB($pref, true, true);
|
// traverse the pref array, with toDB on everything
|
||||||
// Create the data to be stored
|
$_pref = $tp -> toDB($pref, true, true);
|
||||||
$PrefCache1 = $eArrayStorage->WriteArray($_pref);
|
// Create the data to be stored
|
||||||
if(!$sql->db_Update('core', "e107_value='{$PrefCache1}' WHERE e107_name = 'SitePrefs'")){
|
$msqlPrefCache = $eArrayStorage->WriteArray($_pref);
|
||||||
$sql->db_Insert('core', "'SitePrefs', '{$PrefCache1}'");
|
$sql->db_Select_gen("INSERT INTO #core (e107_name,e107_value) values ('SitePrefs', '{$msqlPrefCache}')
|
||||||
}
|
ON DUPLICATE KEY UPDATE e107_value='{$msqlPrefCache}'");
|
||||||
ecache::clear('SitePrefs');
|
ecache::clear('SitePrefs');
|
||||||
}
|
|
||||||
} else {
|
|
||||||
|
|
||||||
$_user_pref = $tp -> toDB($user_pref);
|
|
||||||
|
|
||||||
$tmp=addslashes(serialize($_user_pref));
|
|
||||||
$sql->db_Update("user", "user_prefs='$tmp' WHERE user_id=".intval($uid));
|
|
||||||
return $tmp;
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$_user_pref = $tp -> toDB($user_pref);
|
||||||
|
$tmp=addslashes(serialize($_user_pref));
|
||||||
|
$sql->db_Update("user", "user_prefs='$tmp' WHERE user_id=".intval($uid));
|
||||||
|
return $tmp;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||||
|
Reference in New Issue
Block a user