⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 acp_users.php

📁 这些都是我以前学习是用到的源码
💻 PHP
📖 第 1 页 / 共 5 页
字号:
							'user_birthday'	=> sprintf('%2d-%2d-%4d', $data['bday_day'], $data['bday_month'], $data['bday_year']),						);						$sql = 'UPDATE ' . USERS_TABLE . '							SET ' . $db->sql_build_array('UPDATE', $sql_ary) . "							WHERE user_id = $user_id";						$db->sql_query($sql);						// Update Custom Fields						if (sizeof($cp_data))						{							switch ($db->sql_layer)							{								case 'oracle':								case 'firebird':								case 'postgres':									$right_delim = $left_delim = '"';								break;								case 'sqlite':								case 'mssql':								case 'mssql_odbc':									$right_delim = ']';									$left_delim = '[';								break;								case 'mysql':								case 'mysql4':								case 'mysqli':									$right_delim = $left_delim = '`';								break;							}							foreach ($cp_data as $key => $value)							{								$cp_data[$right_delim . $key . $left_delim] = $value;								unset($cp_data[$key]);							}							$sql = 'UPDATE ' . PROFILE_FIELDS_DATA_TABLE . '								SET ' . $db->sql_build_array('UPDATE', $cp_data) . "								WHERE user_id = $user_id";							$db->sql_query($sql);							if (!$db->sql_affectedrows())							{								$cp_data['user_id'] = (int) $user_id;								$db->return_on_error = true;								$sql = 'INSERT INTO ' . PROFILE_FIELDS_DATA_TABLE . ' ' . $db->sql_build_array('INSERT', $cp_data);								$db->sql_query($sql);								$db->return_on_error = false;							}						}						trigger_error($user->lang['USER_PROFILE_UPDATED'] . adm_back_link($this->u_action . '&amp;u=' . $user_id));					}					// Replace "error" strings with their real, localised form					$error = preg_replace('#^([A-Z_]+)$#e', "(!empty(\$user->lang['\\1'])) ? \$user->lang['\\1'] : '\\1'", $error);				}				$s_birthday_day_options = '<option value="0"' . ((!$data['bday_day']) ? ' selected="selected"' : '') . '>--</option>';				for ($i = 1; $i < 32; $i++)				{					$selected = ($i == $data['bday_day']) ? ' selected="selected"' : '';					$s_birthday_day_options .= "<option value=\"$i\"$selected>$i</option>";				}				$s_birthday_month_options = '<option value="0"' . ((!$data['bday_month']) ? ' selected="selected"' : '') . '>--</option>';				for ($i = 1; $i < 13; $i++)				{					$selected = ($i == $data['bday_month']) ? ' selected="selected"' : '';					$s_birthday_month_options .= "<option value=\"$i\"$selected>$i</option>";				}				$s_birthday_year_options = '';				$now = getdate();				$s_birthday_year_options = '<option value="0"' . ((!$data['bday_year']) ? ' selected="selected"' : '') . '>--</option>';				for ($i = $now['year'] - 100; $i < $now['year']; $i++)				{					$selected = ($i == $data['bday_year']) ? ' selected="selected"' : '';					$s_birthday_year_options .= "<option value=\"$i\"$selected>$i</option>";				}				unset($now);				$template->assign_vars(array(					'ICQ'			=> $data['icq'],					'YIM'			=> $data['yim'],					'AIM'			=> $data['aim'],					'MSN'			=> $data['msn'],					'JABBER'		=> $data['jabber'],					'WEBSITE'		=> $data['website'],					'LOCATION'		=> $data['location'],					'OCCUPATION'	=> $data['occupation'],					'INTERESTS'		=> $data['interests'],					'S_BIRTHDAY_DAY_OPTIONS'	=> $s_birthday_day_options,					'S_BIRTHDAY_MONTH_OPTIONS'	=> $s_birthday_month_options,					'S_BIRTHDAY_YEAR_OPTIONS'	=> $s_birthday_year_options,											'S_PROFILE'		=> true)				);				// Get additional profile fields and assign them to the template block var 'profile_fields'				$user->get_profile_fields($user_id);				$cp->generate_profile_fields('profile', $user_row['iso_lang_id']);			break;			case 'prefs':				$data = array(					'dateformat'		=> request_var('dateformat', $user_row['user_dateformat'], true),					'lang'				=> request_var('lang', $user_row['user_lang']),					'tz'				=> request_var('tz', (float) $user_row['user_timezone']),					'style'				=> request_var('style', $user_row['user_style']),					'dst'				=> request_var('dst', $user_row['user_dst']),					'viewemail'			=> request_var('viewemail', $user_row['user_allow_viewemail']),					'massemail'			=> request_var('massemail', $user_row['user_allow_massemail']),					'hideonline'		=> request_var('hideonline', !$user_row['user_allow_viewonline']),					'notifymethod'		=> request_var('notifymethod', $user_row['user_notify_type']),					'notifypm'			=> request_var('notifypm', $user_row['user_notify_pm']),					'popuppm'			=> request_var('popuppm', $this->optionget($user_row, 'popuppm')),					'allowpm'			=> request_var('allowpm', $user_row['user_allow_pm']),					'topic_sk'			=> request_var('topic_sk', ($user_row['user_topic_sortby_type']) ? $user_row['user_topic_sortby_type'] : 't'),					'topic_sd'			=> request_var('topic_sd', ($user_row['user_topic_sortby_dir']) ? $user_row['user_topic_sortby_dir'] : 'd'),					'topic_st'			=> request_var('topic_st', ($user_row['user_topic_show_days']) ? $user_row['user_topic_show_days'] : 0),					'post_sk'			=> request_var('post_sk', ($user_row['user_post_sortby_type']) ? $user_row['user_post_sortby_type'] : 't'),					'post_sd'			=> request_var('post_sd', ($user_row['user_post_sortby_dir']) ? $user_row['user_post_sortby_dir'] : 'a'),					'post_st'			=> request_var('post_st', ($user_row['user_post_show_days']) ? $user_row['user_post_show_days'] : 0),					'view_images'		=> request_var('view_images', $this->optionget($user_row, 'viewimg')),					'view_flash'		=> request_var('view_flash', $this->optionget($user_row, 'viewflash')),					'view_smilies'		=> request_var('view_smilies', $this->optionget($user_row, 'viewsmilies')),					'view_sigs'			=> request_var('view_sigs', $this->optionget($user_row, 'viewsigs')),					'view_avatars'		=> request_var('view_avatars', $this->optionget($user_row, 'viewavatars')),					'view_wordcensor'	=> request_var('view_wordcensore', $this->optionget($user_row, 'viewcensors')),					'bbcode'	=> request_var('bbcode', $this->optionget($user_row, 'bbcode')),					'smilies'	=> request_var('smilies', $this->optionget($user_row, 'smilies')),					'sig'		=> request_var('sig', $this->optionget($user_row, 'attachsig')),					'notify'	=> request_var('notify', $user_row['user_notify']),				);				if ($submit)				{					$error = validate_data($data, array(						'dateformat'	=> array('string', false, 3, 30),						'lang'			=> array('match', false, '#^[a-z_\-]{2,}$#i'),						'tz'			=> array('num', false, -14, 14),						'topic_sk'		=> array('string', false, 1, 1),						'topic_sd'		=> array('string', false, 1, 1),						'post_sk'		=> array('string', false, 1, 1),						'post_sd'		=> array('string', false, 1, 1),					));					if (!sizeof($error))					{						$this->optionset($user_row, 'popuppm', $data['popuppm']);						$this->optionset($user_row, 'viewimg', $data['view_images']);						$this->optionset($user_row, 'viewflash', $data['view_flash']);						$this->optionset($user_row, 'viewsmilies', $data['view_smilies']);						$this->optionset($user_row, 'viewsigs', $data['view_sigs']);						$this->optionset($user_row, 'viewavatars', $data['view_avatars']);						$this->optionset($user_row, 'viewcensors', $data['view_wordcensor']);						$this->optionset($user_row, 'bbcode', $data['bbcode']);						$this->optionset($user_row, 'smilies', $data['smilies']);						$this->optionset($user_row, 'attachsig', $data['sig']);						$sql_ary = array(							'user_options'			=> $user_row['user_options'],							'user_allow_pm'			=> $data['allowpm'],							'user_allow_viewemail'	=> $data['viewemail'],							'user_allow_massemail'	=> $data['massemail'],							'user_allow_viewonline'	=> !$data['hideonline'],							'user_notify_type'		=> $data['notifymethod'],							'user_notify_pm'		=> $data['notifypm'],							'user_dst'				=> $data['dst'],							'user_dateformat'		=> $data['dateformat'],							'user_lang'				=> $data['lang'],							'user_timezone'			=> $data['tz'],							'user_style'			=> $data['style'],							'user_topic_sortby_type'	=> $data['topic_sk'],							'user_post_sortby_type'		=> $data['post_sk'],							'user_topic_sortby_dir'		=> $data['topic_sd'],							'user_post_sortby_dir'		=> $data['post_sd'],							'user_topic_show_days'	=> $data['topic_st'],							'user_post_show_days'	=> $data['post_st'],							'user_notify'	=> $data['notify'],						);						$sql = 'UPDATE ' . USERS_TABLE . '							SET ' . $db->sql_build_array('UPDATE', $sql_ary) . "							WHERE user_id = $user_id";						$db->sql_query($sql);						trigger_error($user->lang['USER_PREFS_UPDATED'] . adm_back_link($this->u_action . '&amp;u=' . $user_id));					}					// Replace "error" strings with their real, localised form					$error = preg_replace('#^([A-Z_]+)$#e', "(!empty(\$user->lang['\\1'])) ? \$user->lang['\\1'] : '\\1'", $error);				}				$dateformat_options = '';				foreach ($user->lang['dateformats'] as $format => $null)				{					$dateformat_options .= '<option value="' . $format . '"' . (($format == $data['dateformat']) ? ' selected="selected"' : '') . '>';					$dateformat_options .= $user->format_date(time(), $format, true) . ((strpos($format, '|') !== false) ? ' [' . $user->lang['RELATIVE_DAYS'] . ']' : '');					$dateformat_options .= '</option>';				}				$s_custom = false;				$dateformat_options .= '<option value="custom"';				if (!in_array($data['dateformat'], array_keys($user->lang['dateformats'])))				{					$dateformat_options .= ' selected="selected"';					$s_custom = true;				}				$dateformat_options .= '>' . $user->lang['CUSTOM_DATEFORMAT'] . '</option>';				$sort_dir_text = array('a' => $user->lang['ASCENDING'], 'd' => $user->lang['DESCENDING']);				// Topic ordering options				$limit_topic_days = array(0 => $user->lang['ALL_TOPICS'], 1 => $user->lang['1_DAY'], 7 => $user->lang['7_DAYS'], 14 => $user->lang['2_WEEKS'], 30 => $user->lang['1_MONTH'], 90 => $user->lang['3_MONTHS'], 180 => $user->lang['6_MONTHS'], 365 => $user->lang['1_YEAR']);				$sort_by_topic_text = array('a' => $user->lang['AUTHOR'], 't' => $user->lang['POST_TIME'], 'r' => $user->lang['REPLIES'], 's' => $user->lang['SUBJECT'], 'v' => $user->lang['VIEWS']);				// Post ordering options				$limit_post_days = array(0 => $user->lang['ALL_POSTS'], 1 => $user->lang['1_DAY'], 7 => $user->lang['7_DAYS'], 14 => $user->lang['2_WEEKS'], 30 => $user->lang['1_MONTH'], 90 => $user->lang['3_MONTHS'], 180 => $user->lang['6_MONTHS'], 365 => $user->lang['1_YEAR']);				$sort_by_post_text = array('a' => $user->lang['AUTHOR'], 't' => $user->lang['POST_TIME'], 's' => $user->lang['SUBJECT']);				$_options = array('topic', 'post');				foreach ($_options as $sort_option)				{					${'s_limit_' . $sort_option . '_days'} = '<select name="' . $sort_option . '_st">';					foreach (${'limit_' . $sort_option . '_days'} as $day => $text)					{						$selected = ($data[$sort_option . '_st'] == $day) ? ' selected="selected"' : '';						${'s_limit_' . $sort_option . '_days'} .= '<option value="' . $day . '"' . $selected . '>' . $text . '</option>';					}					${'s_limit_' . $sort_option . '_days'} .= '</select>';					${'s_sort_' . $sort_option . '_key'} = '<select name="' . $sort_option . '_sk">';					foreach (${'sort_by_' . $sort_option . '_text'} as $key => $text)					{						$selected = ($data[$sort_option . '_sk'] == $key) ? ' selected="selected"' : '';						${'s_sort_' . $sort_option . '_key'} .= '<option value="' . $key . '"' . $selected . '>' . $text . '</option>';					}					${'s_sort_' . $sort_option . '_key'} .= '</select>';					${'s_sort_' . $sort_option . '_dir'} = '<select name="' . $sort_option . '_sd">';					foreach ($sort_dir_text as $key => $value)					{						$selected = ($data[$sort_option . '_sd'] == $key) ? ' selected="selected"' : '';						${'s_sort_' . $sort_option . '_dir'} .= '<option value="' . $key . '"' . $selected . '>' . $value . '</option>';					}					${'s_sort_' . $sort_option . '_dir'} .= '</select>';				}				$template->assign_vars(array(					'S_PREFS'			=> true,					'S_JABBER_DISABLED'	=> ($config['jab_enable'] && $user_row['user_jabber'] && @extension_loaded('xml')) ? false : true,										'VIEW_EMAIL'		=> $data['viewemail'],					'MASS_EMAIL'		=> $data['massemail'],					'ALLOW_PM'			=> $data['allowpm'],					'HIDE_ONLINE'		=> $data['hideonline'],					'NOTIFY_EMAIL'		=> ($data['notifymethod'] == NOTIFY_EMAIL) ? true : false,					'NOTIFY_IM'			=> ($data['notifymethod'] == NOTIFY_IM) ? true : false,					'NOTIFY_BOTH'		=> ($data['notifymethod'] == NOTIFY_BOTH) ? true : false,					'NOTIFY_PM'			=> $data['notifypm'],					'POPUP_PM'			=> $data['popuppm'],					'DST'				=> $data['dst'],					'BBCODE'			=> $data['bbcode'],					'SMILIES'			=> $data['smilies'],					'ATTACH_SIG'		=> $data['sig'],					'NOTIFY'			=> $data['notify'],					'VIEW_IMAGES'		=> $data['view_images'],					'VIEW_FLASH'		=> $data['view_flash'],					'VIEW_SMILIES'		=> $data['view_smilies'],					'VIEW_SIGS'			=> $data['view_sigs'],					'VIEW_AVATARS'		=> $data['view_avatars'],					'VIEW_WORDCENSOR'	=> $data['view_wordcensor'],										'S_TOPIC_SORT_DAYS'		=> $s_limit_topic_days,					'S_TOPIC_SORT_KEY'		=> $s_sort_topic_key,					'S_TOPIC_SORT_DIR'		=> $s_sort_topic_dir,					'S_POST_SORT_DAYS'		=> $s_limit_post_days,					'S_POST_SORT_KEY'		=> $s_sort_post_key,					'S_POST_SORT_DIR'		=> $s_sort_post_dir,					'DATE_FORMAT'			=> $data['dateformat'],					'S_DATEFORMAT_OPTIONS'	=> $dateformat_options,					'S_CUSTOM_DATEFORMAT'	=> $s_custom,					'DEFAULT_DATEFORMAT'	=> $config['default_dateformat'],					'A_DEFAULT_DATEFORMAT'	=> addslashes($config['default_dateformat']),					'S_LANG_OPTIONS'	=> language_select($data['lang']),					'S_STYLE_OPTIONS'	=> style_select($data['style']),					'S_TZ_OPTIONS'		=> tz_select($data['tz'], true),					)				);			break;			case 'avatar':				$avatar_select = basename(request_var('avatar_select', ''));				$category = basename(request_var('category', ''));				$can_upload = (file_exists($phpbb_root_path . $config['avatar_path']) && is_writeable($phpbb_root_path . $config['avatar_path']) && $file_uploads) ? true : false;				$data = array();				if ($submit)				{					$delete = request_var('delete', '');					$data = array(						'uploadurl'		=> request_var('uploadurl', ''),						'remotelink'	=> request_var('remotelink', ''),						'width'			=> request_var('width', ''),						'height'		=> request_var('height', ''),					);					$error = validate_data($data, array(						'uploadurl'		=> array('string', true, 5, 255),						'remotelink'	=> array('string', true, 5, 255),						'width'			=> array('string', true, 1, 3),						'height'		=> array('string', true, 1, 3),					));					if (!sizeof($error))					{						$data['user_id'] = $user_id;						if ((!empty($_FILES['uploadfile']['name']) || $data['uploadurl']) && $can_upload && $config['allow_avatar_upload'])						{							list($type, $filename, $width, $height) = avatar_upload($data, $error);						}						else if ($data['remotelink'] && $config['allow_avatar_remote'])						{							list($type, $filename, $width, $height) = avatar_remote($data, $error);						}						else if ($avatar_select && $config['allow_avatar_local'])						{

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -