📄 members.php
字号:
<?php
/*
[DISCUZ!] admin/members.php - config of members and usergroups
This is NOT a freeware, use is subject to license terms
Version: 2.0.1
Author: Crossday (info@discuz.net)
Copyright: Crossday Studio (www.crossday.com)
Last Modified: 2002/12/23 20:56
*/
if(!defined("IN_DISCUZ")) {
exit("Access Denied");
}
cpheader();
if($action == 'addmember') {
if(!$addsubmit) {
?>
<br><form method="post" action="admincp.php?action=addmember">
<table cellspacing="0" cellpadding="0" border="0" width="80%" align="center">
<tr><td bgcolor="<?=BORDERCOLOR?>">
<table border="0" cellspacing="<?=BORDERWIDTH?>" cellpadding="<?=TABLESPACE?>" width="100%">
<tr><td class="header" colspan="2">添加新用户</td></tr>
<tr><td bgcolor="<?=ALTBG1?>">头衔:</td>
<td align="right" bgcolor="<?=ALTBG2?>"><select name="newstatus">
<option value="Member">正式会员</option>
<option value="Moderator">版 主</option>
<option value="SuperMod">超级版主</option>
<option value="Inactive">等待验证</option>
</td></tr>
<tr><td bgcolor="<?=ALTBG1?>">用户名:</td>
<td align="right" bgcolor="<?=ALTBG2?>"><input type="text" name="newusername"></td></tr>
<tr><td bgcolor="<?=ALTBG1?>">密码:</td>
<td align="right" bgcolor="<?=ALTBG2?>"><input type="text" name="newpassword"></td></tr>
<tr><td bgcolor="<?=ALTBG1?>">Email:</td>
<td align="right" bgcolor="<?=ALTBG2?>"><input type="text" name="newemail"></td></tr>
<tr><td bgcolor="<?=ALTBG1?>">发送通知到上述地址:</td>
<td align="right" bgcolor="<?=ALTBG2?>"><input type="checkbox" name="emailnotify" value="yes" checked></td></tr>
</table></td></tr></table>
<br><center><input type="submit" name="addsubmit" value="添加用户"></center>
</form>
<?
} else {
if(!trim($newpassword)) {
cpmsg('您没有填写用户密码,请返回修改。');
}
if(!trim($newemail)) {
cpmsg('您没有填写 Email 地址,请返回修改。');
}
$query = $db->query("SELECT COUNT(*) FROM $table_members WHERE username='$newusername'");
if($db->result($query, 0)) {
cpmsg('用户名已经存在,请返回修改。');
}
$db->query("INSERT INTO $table_members (username, password, gender, status, regip, regdate, lastvisit, postnum, credit, email, tpp, ppp, styleid, dateformat, timeformat, showemail, newsletter, timeoffset)
VALUES ('$newusername', '".md5($newpassword)."', '0', '$newstatus', 'hidden', '$timestamp', '$timestamp', '0', '0', '$newemail', '0', '0', '0', '{$_DCACHE[settings][dateformat]}', '{$_DCACHE[settings][timeformat]}', '1', '1', '{$_DCACHE[settings][timeoffset]}')");
$db->query("UPDATE $table_settings SET lastmember='$newusername', totalmembers=totalmembers+1");
if($emailnotify == 'yes') {
sendmail($newemail, "[Discuz!]您被 $bbname 添加为会员", "您好,我是 $bbname 管理员 {$discuz_user},\n".
"您已被添加成为我们论坛的会员,欢迎您用以下账号登录:\n".
"用户名:$newusername\n".
"密码:$newpassword\n".
"欢迎光临 $bbname ($boardurl)"
);
}
updatecache('settings');
cpmsg('用户添加成功。');
}
} elseif($action == 'members') {
if(!$searchsubmit && !$deletesubmit && !$editsubmit && !$exportsubmit) {
?>
<br><form method="post" action="admincp.php?action=members">
<table cellspacing="0" cellpadding="0" border="0" width="80%" align="center">
<tr><td bgcolor="<?=BORDERCOLOR?>">
<table border="0" cellspacing="<?=BORDERWIDTH?>" cellpadding="<?=TABLESPACE?>" width="100%">
<tr><td class="header" colspan="2">搜索用户</td></tr>
<tr><td bgcolor="<?=ALTBG1?>">直接删除符合条件的用户:</td>
<td align="right" bgcolor="<?=ALTBG2?>"><input type="checkbox" name="deletesubmit" value="1"></td></tr>
<tr><td bgcolor="<?=ALTBG1?>">头衔:</td>
<td align="right" bgcolor="<?=ALTBG2?>"><select name="userstatus">
<option value="">任何头衔</option>
<option value="Admin">管 理 员</option>
<option value="SuperMod">超级版主</option>
<option value="Moderator">版 主</option>
<option value="Member">正式会员</option>
<option value="Banned">禁止访问</option>
<option value="PostBanned">禁止发言</option>
</select></td></tr>
<tr><td bgcolor="<?=ALTBG1?>">用户名包含:</td>
<td align="right" bgcolor="<?=ALTBG2?>"><input type="text" name="username" size="40"></td></tr>
<tr><td bgcolor="<?=ALTBG1?>">积分小于:</td>
<td align="right" bgcolor="<?=ALTBG2?>"><input type="text" name="creditsless" size="40"></td></tr>
<tr><td bgcolor="<?=ALTBG1?>">积分大于:</td>
<td align="right" bgcolor="<?=ALTBG2?>"><input type="text" name="creditsmore" size="40"></td></tr>
<tr><td bgcolor="<?=ALTBG1?>">多少天没有登录论坛:</td>
<td align="right" bgcolor="<?=ALTBG2?>"><input type="text" name="awaydays" size="40"></td></tr>
<tr><td bgcolor="<?=ALTBG1?>">注册 IP 开头 (如 202.97):</td>
<td align="right" bgcolor="<?=ALTBG2?>"><input type="text" name="regip" size="40"></td></tr>
</table></td></tr></table><br><center>
<input type="submit" name="searchsubmit" value="搜索用户">
<input type="submit" name="deletesubmit" value="删除用户">
<input type="submit" name="exportsubmit" value="导出 Email"></center></form>
<?
} elseif($searchsubmit || $deletesubmit || $exportsubmit) {
if(!$page) {
$page = 1;
}
$offset = ($page - 1) * $memberperpage;
$conditions = "";
$conditions .= $username != "" ? " AND (username LIKE '%$username%' OR username='$username')" : NULL;
$conditions .= $userstatus != "" ? " AND status='$userstatus'" : NULL;
$conditions .= $creditsmore != "" ? " AND credit>'$creditsmore'" : NULL;
$conditions .= $creditsless != "" ? " AND credit<'$creditsless'" : NULL;
$conditions .= $awaydays != "" ? " AND lastvisit<'".($timestamp - $awaydays * 86400)."'" : NULL;
$conditions .= $regip != "" ? " AND regip LIKE '$regip%'" : NULL;
if($conditions) {
$conditions = substr($conditions, 5);
if($searchsubmit) {
$query = $db->query("SELECT COUNT(*) FROM $table_members WHERE $conditions");
$num = $db->result($query, 0);
$multipage = multi($num, $memberperpage, $page, "admincp.php?action=members&searchsubmit=yes&username=$username&userstatus=$userstatus&creditsmore=$creditsmore&creditsless=$creditsless&awaydays=$awaydays®ip=$regip");
$query = $db->query("SELECT * FROM $table_members WHERE $conditions LIMIT $offset, $memberperpage");
while($member = $db->fetch_array($query)) {
$select = array($member[status] => "selected=\"selected\"");
$members .= "<tr align=\"center\" bgcolor=\"".ALTBG2."\" align=\"center\">\n".
"<td><input type=\"checkbox\" name=\"delete[]\" value=\"$member[uid]\"></td>\n".
"<td>$member[username]</td>\n".
"<td><input type=\"text\" size=\"10\" name=\"passwdnew[$member[uid]]\"></td>\n".
"<td><input type=\"text\" size=\"5\" name=\"creditnew[$member[uid]]\" value=\"$member[credit]\"> $creditunit</td>\n".
"<td><select name=\"statusnew[$member[uid]]\">\n".
"<option value=\"Member\">未知头衔</option>\n".
"<option value=\"Admin\" ".$select['Admin'].">管 理 员</option>\n".
"<option value=\"SuperMod\" ".$select['SuperMod'].">超级版主</option>\n".
"<option value=\"Moderator\" ".$select['Moderator'].">版 主</option>\n".
"<option value=\"Member\" ".$select['Member'].">正式会员</option>\n".
"<option value=\"Banned\" ".$select['Banned'].">禁止访问</option>\n".
"<option value=\"PostBanned\" ".$select['PostBanned'].">禁止发言</option></select></td>\n".
"<td><input type=\"text\" size=\"15\" name=\"usercstatus[$member[uid]]\" value=\"$member[customstatus]\"></td>\n".
"<td><a href=\"admincp.php?action=memberprofile&username=".rawurlencode($member[username])."\">[编辑]</a></tr>\n";
}
?>
<form method="post" action="admincp.php?action=members">
<table cellspacing="0" cellpadding="0" border="0" width="95%" align="center">
<tr><td class="multi"><?=$multipage?></td></tr>
<tr><td bgcolor="<?=BORDERCOLOR?>">
<table border="0" cellspacing="<?=BORDERWIDTH?>" cellpadding="<?=TABLESPACE?>" width="100%">
<tr align="center" class="header">
<td width="45"><input type="checkbox" name="chkall" class="header" onclick="checkall(this.form)">删?</td>
<td>用户名</td><td>密码</td><td>积分</td><td>系统头衔</td><td>用户头衔</td><td>详细</td></tr>
<?=$members?>
</table></td></tr>
<tr><td class="multi"><?=$multipage?></td></tr>
</table><br><center>
<input type="submit" name="editsubmit" value="修改用户资料"></center>
</form>
<?
} elseif($deletesubmit) {
if(!$confirmed) {
cpmsg("本操作不可恢复,您确定要删除符合条件的会员吗?", "admincp.php?action=members&deletesubmit=yes&username=$username&userstatus=$userstatus&creditsmore=$creditsmore&creditsless=$creditsless&awaydays=$awaydays®ip=$regip", "form");
} else {
$query = $db->query("DELETE FROM $table_members WHERE $conditions");
$numdeleted = $db->affected_rows();
updatecache('settings');
cpmsg("符合条件的 $numdeleted 个用户被成功删除。");
}
} elseif($exportsubmit) {
$export = $comma = '';
$query = $db->query("SELECT username, email FROM $table_members WHERE $conditions");
while($member = $db->fetch_array($query)) {
$export .= "$comma$member[username] <$member[email]>";
$comma = ', ';
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -