📄 members.inc.php
字号:
showsetting('members_edit_lastvisit', 'lastvisitnew', $member['lastvisit'], 'text');
showsetting('members_edit_lastip', 'lastipnew', $member['lastip'], 'text');
showtitle('members_edit_info');
showsetting('members_edit_site', 'sitenew', $member['site'], 'text');
showsetting('members_edit_qq', 'qqnew', $member['qq'], 'text');
showsetting('members_edit_icq', 'icqnew', $member['icq'], 'text');
showsetting('members_edit_yahoo', 'yahoonew', $member['yahoo'], 'text');
showsetting('members_edit_msn', 'msnnew', $member['msn'], 'text');
showsetting('members_edit_taobao', 'taobaonew', $member['taobao'], 'text');
showsetting('members_edit_alipay', 'alipaynew', $member['alipay'], 'text');
showsetting('members_edit_location', 'locationnew', $member['location'], 'text');
showsetting('members_edit_bday', 'bdaynew', $member['bday'], 'text');
showsetting('members_edit_bio', 'bionew', $member['bio'], 'textarea');
showsetting('members_edit_signature', 'signaturenew', $member['signature'], 'textarea');
showtitle('members_edit_option');
showsetting('members_edit_style', '', '', $styleselect);
showsetting('members_edit_tpp', 'tppnew', $member['tpp'], 'text');
showsetting('members_edit_ppp', 'pppnew', $member['ppp'], 'text');
showsetting('members_edit_cstatus', 'cstatusnew', $member['customstatus'], 'text');
showsetting('members_edit_timeformat', '', '', '<input class="radio" type="radio" name="timeformatnew" value="0" '.$tfcheck[0].'> '.$lang['default'].' <input class="radio" type="radio" name="timeformatnew" value="1" '.$tfcheck[1].'> '.$lang['members_edit_timeformat_12'].' <input class="radio" type="radio" name="timeformatnew" value="2" '.$tfcheck[2].'> '.$lang['members_edit_timeformat_24']);
showsetting('members_edit_timeoffset', 'timeoffsetnew', $member['timeoffset'], 'text');
showsetting('members_edit_pmsound', '', '', '<input class="radio" type="radio" value="0" name="pmsoundnew" '.$pscheck[0].'>'.$lang['none'].' <input class="radio" type="radio" value="1" name="pmsoundnew" '.$pscheck[1].'><a href="images/sound/pm_1.wav">#1</a> <input class="radio" type="radio" value="2" name="pmsoundnew" '.$pscheck[2].'><a href="images/sound/pm_2.wav">#2</a> <input class="radio" type="radio" value="3" name="pmsoundnew" '.$pscheck[3].'><a href="images/sound/pm_3.wav">#3</a>');
showsetting('members_edit_invisible', 'invisiblenew', $member['invisible'], 'radio');
showsetting('members_edit_showemail', 'showemailnew', $member['showemail'], 'radio');
showsetting('members_edit_newsletter', 'newsletternew', $member['newsletter'], 'radio');
showsetting('members_edit_ignorepm', 'ignorepmnew', $member['ignorepm'], 'textarea');
if($fields) {
showtitle('members_edit_profilefield');
foreach($fields as $field) {
if($field['selective']) {
$fieldselect = "<select name=\"field_$field[fieldid]new\"><option value=\"\"> </option>";
foreach($field['choices'] as $index => $choice) {
$fieldselect .= "<option value=\"$index\" ".($index == $member['field_'.$field['fieldid']] ? 'selected="selected"' : '').">$choice</option>";
}
$fieldselect .= '</select>';
showsetting($field['title'], '', '', $fieldselect);
} else {
showsetting($field['title'], "field_$field[fieldid]new", $member['field_'.$field['fieldid']], 'text');
}
}
}
showsubmit('editsubmit');
showtablefooter();
showformfooter();
} else {
require_once DISCUZ_ROOT.'./uc_client/client.php';
require_once DISCUZ_ROOT.'./include/discuzcode.func.php';
$ucresult = uc_user_edit($member['username'], $passwordnew, $passwordnew, $emailnew, 1);
$creditsnew = intval($creditsnew);
$regdatenew = strtotime($regdatenew);
$lastvisitnew = strtotime($lastvisitnew);
$secquesadd = $clearquestion ? ", secques=''" : '';
$signaturenew = censor($signaturenew);
$sigstatusnew = $signaturenew ? 1 : 0;
$sightmlnew = addslashes(discuzcode(stripslashes($signaturenew), 1, 0, 0, 0, ($member['allowsigbbcode'] ? ($member['allowcusbbcode'] ? 2 : 1) : 0), $member['allowsigimgcode'], 0));
$bionew = censor(dhtmlspecialchars($bionew));
$biohtmlnew = addslashes(discuzcode(stripslashes($bionew), 1, 0, 0, 0, ($member['allowbiobbcode'] ? ($member['allowcusbbcode'] ? 2 : 1) : 0), $member['allowbioimgcode'], 0));
$oltimenew = round($totalnew / 60);
$fieldadd = '';
foreach(array_merge($_DCACHE['fields_required'], $_DCACHE['fields_optional']) as $field) {
$field_key = 'field_'.$field['fieldid'];
$field_val = trim(${'field_'.$field['fieldid'].'new'});
if($field['selective'] && $field_val != '' && !isset($field['choices'][$field_val])) {
cpmsg('undefined_action', '', 'error');
} else {
$fieldadd .= ", $field_key='".dhtmlspecialchars($field_val)."'";
}
}
$emailadd = $ucresult < 0 ? '' : "email='$emailnew', ";
$passwordadd = $ucresult < 0 ? '' : ", password='".md5(random(10))."'";
$db->query("UPDATE {$tablepre}members SET gender='$gendernew', $emailadd posts='$postsnew', digestposts='$digestpostsnew',
pageviews='$pageviewsnew', regip='$regipnew', regdate='$regdatenew', lastvisit='$lastvisitnew', lastip='$lastipnew', bday='$bdaynew',
styleid='$styleidnew', tpp='$tppnew', ppp='$pppnew', timeformat='$timeformatnew', oltime='$oltimenew',
showemail='$showemailnew', newsletter='$newsletternew', invisible='$invisiblenew', timeoffset='$timeoffsetnew',
pmsound='$pmsoundnew', sigstatus='$sigstatusnew' $passwordadd $secquesadd WHERE uid='$uid'");
$db->query("UPDATE {$tablepre}memberfields SET nickname='$nicknamenew', site='$sitenew', qq='$qqnew', icq='$icqnew', yahoo='$yahoonew', msn='$msnnew',
taobao='$taobaonew', alipay='$alipaynew', location='$locationnew', bio='$biohtmlnew', customstatus='$cstatusnew', ignorepm='$ignorepmnew', sightml='$sightmlnew'
$fieldadd WHERE uid='$uid'");
$db->query("REPLACE INTO {$tablepre}onlinetime (uid, thismonth, total)
VALUES ('$uid', '$thismonthnew', '$totalnew')");
cpmsg('members_edit_succeed', '', 'succeed');
}
} elseif($operation == 'profilefields') {
if(!submitcheck('fieldsubmit') && !submitcheck('editsubmit') && !$edit) {
$query = $db->query("SELECT * FROM {$tablepre}profilefields");
while($field = $db->fetch_array($query)) {
$profilefields .= showtablerow('', array('class="td25"', 'class="td28"'), array(
"<input class=\"checkbox\" type=\"checkbox\" name=\"delete[{$field[fieldid]}]\" value=\"$field[fieldid]\">",
"<input type=\"text\" class=\"txt\" size=\"2\" name=\"displayordernew[{$field[fieldid]}]\" value=\"$field[displayorder]\">",
"<input type=\"text\" class=\"txt\" size=\"18\" name=\"titlenew[{$field[fieldid]}]\" value=\"$field[title]\">",
"<input class=\"checkbox\" type=\"checkbox\" name=\"availablenew[{$field[fieldid]}]\" value=\"1\" ".($field['available'] ? 'checked' : '').">",
"<input class=\"checkbox\" type=\"checkbox\" name=\"invisiblenew[{$field[fieldid]}]\" value=\"1\" ".($field['invisible'] ? 'checked' : '').">",
"<input class=\"checkbox\" type=\"checkbox\" name=\"unchangeablenew[{$field[fieldid]}]\" value=\"1\" ".($field['unchangeable'] ? 'checked' : '').">",
"<input class=\"checkbox\" type=\"checkbox\" name=\"showinthreadnew[{$field[fieldid]}]\" value=\"1\" ".($field['showinthread'] ? 'checked' : '').">",
"<a href=\"admincp.php?action=members&operation=profilefields&edit=$field[fieldid]\" class=\"act\">$lang[detail]</a>"
), TRUE);
}
shownav('user', 'members_edit_profilefields');
showsubmenu('members_edit_profilefields');
showtips('members_edit_profilefields_tips');
echo <<<EOT
<script type="text/JavaScript">
var rowtypedata = [
[
[1,'', 'td25'],
[1,'', 'td28'],
[6,'<input type="text" class="txt" name="newtitle[]" size="18">']
]
];
</script>
EOT;
showformheader('members&operation=profilefields');
showtableheader();
showsubtitle(array('', 'display_order', 'fields_title', 'available', 'fields_invisible', 'fields_unchangeable', 'fields_show_in_thread', ''));
echo $profilefields;
echo '<tr><td></td><td colspan="7"><div><a href="###" onclick="addrow(this, 0)" class="addtr">'.$lang['members_edit_profilefields_add'].'</a></div></td></tr>';
showsubmit('fieldsubmit', 'submit', 'del');
showtablefooter();
showformfooter();
} elseif(submitcheck('fieldsubmit')) {
if(is_array($titlenew)) {
foreach($titlenew as $id => $val) {
$db->query("UPDATE {$tablepre}profilefields SET title='$titlenew[$id]', available='$availablenew[$id]', invisible='$invisiblenew[$id]', displayorder='$displayordernew[$id]', unchangeable='$unchangeablenew[$id]', showinthread='$showinthreadnew[$id]' WHERE fieldid='$id'");
}
}
if(is_array($delete)) {
$ids = implode('\',\'', $delete);
$dropfields = implode(',DROP field_', $delete);
$db->query("DELETE FROM {$tablepre}profilefields WHERE fieldid IN ('$ids')");
$db->query("ALTER TABLE {$tablepre}memberfields DROP field_$dropfields");
}
if(is_array($newtitle)) {
foreach($newtitle as $value) {
if($value = trim($value)) {
$db->query("INSERT INTO {$tablepre}profilefields (available, invisible, title, size)
VALUES ('1', '0', '$value', '50')");
$fieldid = $db->insert_id();
$db->query("ALTER TABLE {$tablepre}memberfields ADD field_$fieldid varchar(50) NOT NULL", 'SILENT');
}
}
}
updatecache(array('fields_required', 'fields_optional', 'custominfo'));
cpmsg('fields_edit_succeed', 'admincp.php?action=members&operation=profilefields', 'succeed');
} elseif($edit) {
$field = $db->fetch_first("SELECT * FROM {$tablepre}profilefields WHERE fieldid='$edit'");
if(!$field) {
cpmsg('undefined_action', '', 'error');
}
if(!submitcheck('editsubmit')) {
showsubmenu("$lang[fields_edit] - $field[title]");
showformheader("members&operation=profilefields&edit=$edit");
showtableheader();
showsetting('fields_edit_title', 'titlenew', $field['title'], 'text');
showsetting('fields_edit_desc', 'descriptionnew', $field['description'], 'text');
showsetting('fields_edit_size', 'sizenew', $field['size'], 'text');
showsetting('fields_edit_invisible', 'invisiblenew', $field['invisible'], 'radio');
showsetting('fields_edit_required', 'requirednew', $field['required'], 'radio');
showsetting('fields_edit_unchangeable', 'unchangeablenew', $field['unchangeable'], 'radio');
showsetting('fields_edit_show_in_thread', 'showinthreadnew', $field['showinthread'], 'radio');
showsetting('fields_edit_selective', 'selectivenew', $field['selective'], 'radio');
showsetting('fields_edit_choices', 'choicesnew', $field['choices'], 'textarea');
showsubmit('editsubmit');
showtablefooter();
showformfooter();
} else {
$titlenew = trim($titlenew);
$sizenew = $sizenew <= 255 ? $sizenew : 255;
if(!$titlenew || !$sizenew) {
cpmsg('fields_edit_invalid', '', 'error');
}
if($sizenew != $field['size']) {
$db->query("ALTER TABLE {$tablepre}memberfields CHANGE field_$edit field_$edit varchar($sizenew) NOT NULL");
}
$db->query("UPDATE {$tablepre}profilefields SET title='$titlenew', description='$descriptionnew', size='$sizenew', invisible='$invisiblenew', required='$requirednew', unchangeable='$unchangeablenew', showinthread='$showinthreadnew', selective='$selectivenew', choices='$choicesnew' WHERE fieldid='$edit'");
updatecache(array('fields_required', 'fields_optional', 'custominfo'));
cpmsg('fields_edit_succeed', 'admincp.php?action=members&operation=profilefields', 'succeed');
}
}
} elseif($operation == 'ipban') {
if(!submitcheck('ipbansubmit')) {
require_once DISCUZ_ROOT.'./include/misc.func.php';
$iptoban = explode('.', $ip);
$ipbanned = '';
$query = $db->query("SELECT * FROM {$tablepre}banned ORDER BY dateline");
while($banned = $db->fetch_array($query)) {
for($i = 1; $i <= 4; $i++) {
if($banned["ip$i"] == -1) {
$banned["ip$i"] = '*';
}
}
$disabled = $adminid != 1 && $banned['admin'] != $discuz_userss ? 'disabled' : '';
$banned['dateline'] = gmdate($dateformat, $banned['dateline'] + $timeoffset * 3600);
$banned['expiration'] = gmdate($dateformat, $banned['expiration'] + $timeoffset * 3600);
$theip = "$banned[ip1].$banned[ip2].$banned[ip3].$banned[ip4]";
$ipbanned .= showtablerow('', array('class="td25"'), array(
"<input class=\"checkbox\" type=\"checkbox\" name=\"delete[$banned[id]]\" value=\"$banned[id]\" $disabled />",
$theip,
convertip($theip, "./"),
$banned[admin],
$banned[dateline],
"<input type=\"text\" class=\"txt\" size=\"10\" name=\"expirationnew[$banned[id]]\" value=\"$banned[expiration]\" $disabled />"
), TRUE);
}
shownav('user', 'nav_members_ipban');
showsubmenu('nav_members_ipban');
showtips('members_ipban_tips');
showformheader('members&operation=ipban');
showtableheader();
showsubtitle(array('', 'ip', 'members_ipban_location', 'operator', 'start_time', 'end_time'));
echo $ipbanned;
showtablerow('', array('', 'class="td28" colspan="3"', 'class="td28" colspan="2"'), array(
$lang['add_new'],
'<input type="text" class="txt" name="ip1new" value="'.$iptoban[0].'" size="3" maxlength="3">.<input type="text" class="txt" name="ip2new" value="'.$iptoban[1].'" size="3" maxlength="3">.<input type="text" class="txt" name="ip3new" value="'.$iptoban[2].'" size="3" maxlength="3">.<input type="text" class="txt" name="ip4new" value="'.$iptoban[3].'" size="3" maxlength="3">',
$lang['validity'].': <input type="text" class="txt" name="validitynew" value="30" size="3"> '.$lang['members_ipban_days']
));
showsubmit('ipbansubmit', 'submit', 'del');
showtablefooter();
showformfooter();
} else {
if($ids = implodeids($delete)) {
$db->query("DELETE FROM {$tablepre}banned WHERE id IN ($ids) AND ('$adminid'='1' OR admin='$discuz_user')");
}
if($ip1new != '' && $ip2new != '' && $ip3new != '' && $ip4new != '') {
$own = 0;
$ip = explode('.', $onlineip);
for($i = 1; $i <= 4; $i++) {
if(!is_numeric(${'ip'.$i.'new'}) || ${'ip'.$i.'new'} < 0) {
if($adminid != 1) {
cpmsg('members_ipban_nopermission', '', 'error');
}
${'ip'.$i.'new'} = -1;
$own++;
} elseif(${'ip'.$i.'new'} == $ip[$i - 1]) {
$own++;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -