260 lines
9.2 KiB
PHP
260 lines
9.2 KiB
PHP
<?
|
|
$sub_menu = "200100";
|
|
include_once("./_common.php");
|
|
|
|
auth_check($auth[$sub_menu], "r");
|
|
|
|
$token = get_token();
|
|
|
|
$sql_common = " from $g4[member_table] ";
|
|
|
|
$sql_search = " where (1) ";
|
|
if ($stx) {
|
|
$sql_search .= " and ( ";
|
|
switch ($sfl) {
|
|
case "mb_point" :
|
|
$sql_search .= " ($sfl >= '$stx') ";
|
|
break;
|
|
case "mb_level" :
|
|
$sql_search .= " ($sfl = '$stx') ";
|
|
break;
|
|
case "mb_tel" :
|
|
case "mb_hp" :
|
|
$sql_search .= " ($sfl like '%$stx') ";
|
|
break;
|
|
default :
|
|
$sql_search .= " ($sfl like '$stx%') ";
|
|
break;
|
|
}
|
|
$sql_search .= " ) ";
|
|
}
|
|
|
|
//if ($is_admin == 'group') $sql_search .= " and mb_level = '$member[mb_level]' ";
|
|
if ($is_admin != 'super')
|
|
$sql_search .= " and mb_level <= '$member[mb_level]' ";
|
|
|
|
if (!$sst) {
|
|
$sst = "mb_datetime";
|
|
$sod = "desc";
|
|
}
|
|
|
|
$sql_order = " order by $sst $sod ";
|
|
|
|
$sql = " select count(*) as cnt
|
|
$sql_common
|
|
$sql_search
|
|
$sql_order ";
|
|
$row = sql_fetch($sql);
|
|
$total_count = $row[cnt];
|
|
|
|
$rows = $config[cf_page_rows];
|
|
$total_page = ceil($total_count / $rows); // 전체 페이지 계산
|
|
if (!$page) $page = 1; // 페이지가 없으면 첫 페이지 (1 페이지)
|
|
$from_record = ($page - 1) * $rows; // 시작 열을 구함
|
|
|
|
// 탈퇴회원수
|
|
$sql = " select count(*) as cnt
|
|
$sql_common
|
|
$sql_search
|
|
and mb_leave_date <> ''
|
|
$sql_order ";
|
|
$row = sql_fetch($sql);
|
|
$leave_count = $row[cnt];
|
|
|
|
// 차단회원수
|
|
$sql = " select count(*) as cnt
|
|
$sql_common
|
|
$sql_search
|
|
and mb_intercept_date <> ''
|
|
$sql_order ";
|
|
$row = sql_fetch($sql);
|
|
$intercept_count = $row[cnt];
|
|
|
|
if ($sfl || $stx)
|
|
$listall = "<a href='$_SERVER[PHP_SELF]' class=tt>처음으로</a>";
|
|
|
|
$g4[title] = "회원관리";
|
|
include_once("./admin.head.php");
|
|
|
|
$sql = " select *
|
|
$sql_common
|
|
$sql_search
|
|
$sql_order
|
|
limit $from_record, $rows ";
|
|
$result = sql_query($sql);
|
|
|
|
$colspan = 15;
|
|
?>
|
|
|
|
<script src="<?=$g4[path]?>/js/sideview.js"></script>
|
|
<script>
|
|
var list_update_php = "member_list_update.php";
|
|
var list_delete_php = "member_list_delete.php";
|
|
</script>
|
|
|
|
<form id="fsearch" name="fsearch" method="get">
|
|
<fieldset>
|
|
<legend>회원검색</legend>
|
|
<?=$listall?>
|
|
<span>총회원 <?=number_format($total_count)?></span> 중
|
|
<a href='?sst=mb_intercept_date&sod=desc&sfl=<?=$sfl?>&stx=<?=$stx?>' title='차단된 회원부터 출력'>차단 : <?=number_format($intercept_count)?></a>,
|
|
<a href='?sst=mb_leave_date&sod=desc&sfl=<?=$sfl?>&stx=<?=$stx?>' title='탈퇴한 회원부터 출력'>탈퇴 : <?=number_format($leave_count)?></a>
|
|
<select id="sfl" name="sfl">
|
|
<option value="mb_id">회원아이디</option>
|
|
<option value="mb_name">이름</option>
|
|
<option value="mb_nick">별명</option>
|
|
<option value="mb_level">권한</option>
|
|
<option value="mb_email">E-MAIL</option>
|
|
<option value="mb_tel">전화번호</option>
|
|
<option value="mb_hp">핸드폰번호</option>
|
|
<option value="mb_point">포인트</option>
|
|
<option value="mb_datetime">가입일시</option>
|
|
<option value="mb_ip">IP</option>
|
|
<option value="mb_recommend">추천인</option>
|
|
</select>
|
|
<label for="stx">검색어</label>
|
|
<input type="text" id="stx" name="stx" required value='<? echo $stx ?>'>
|
|
<input type="submit" value="검색">
|
|
</fieldset>
|
|
</form>
|
|
|
|
<form id="fmemberlist" name="fmemberlist" method="post">
|
|
<input type="hidden" name="sst" value="<?=$sst?>">
|
|
<input type="hidden" name="sod" value="<?=$sod?>">
|
|
<input type="hidden" name="sfl" value="<?=$sfl?>">
|
|
<input type="hidden" name="stx" value="<?=$stx?>">
|
|
<input type="hidden" name="page" value="<?=$page?>">
|
|
<input type="hidden" name="token" value="<?=$token?>">
|
|
<input type="hidden" name="mb_id[<?=$i?>]" value="<?=$row['mb_id']?>">
|
|
|
|
<a href="./member_form.php">회원추가</a>
|
|
|
|
<table>
|
|
<caption>
|
|
각 제목열의 항목을 클릭하시면 해당 조건으로 정렬하실 수 있습니다.<br>
|
|
회원자료 삭제시 다른 회원이 기존 회원아이디를 사용하지 못하도록 회원아이디, 이름, 별명은 삭제하지 않고 영구 보관합니다.
|
|
</caption>
|
|
<thead>
|
|
<tr>
|
|
<th scope="col" id="th1"><label for="chkall">전체선택</label><input type="checkbox" id="chkall" name="chkall" value='1' onclick='check_all(this.form)'></th>
|
|
<th scope="col" id="th2"><?=subject_sort_link('mb_id')?>회원아이디</a></th>
|
|
<th scope="col" id="th3"><?=subject_sort_link('mb_name')?>이름</a></th>
|
|
<th scope="col" id="th4"><?=subject_sort_link('mb_nick')?>별명</a></th>
|
|
<th scope="col" id="th5"><?=subject_sort_link('mb_level', '', 'desc')?>권한</a></th>
|
|
<th scope="col" id="th6"><?=subject_sort_link('mb_point', '', 'desc')?>포인트</a></th>
|
|
<th scope="col" id="th7"><?=subject_sort_link('mb_today_login', '', 'desc')?>최종접속</a></th>
|
|
<th scope="col" id="th8"><?=subject_sort_link('mb_mailling', '', 'desc')?>수신</a></th>
|
|
<th scope="col" id="th9"><?=subject_sort_link('mb_open', '', 'desc')?>공개</a></th>
|
|
<!-- <th scope="col" id="th10"><?=subject_sort_link('mb_leave_date', '', 'desc')?>탈퇴</a></th> -->
|
|
<th scope="col" id="th11"><?=subject_sort_link('mb_email_certify', '', 'desc')?>인증</a></th>
|
|
<th scope="col" id="th12"><?=subject_sort_link('mb_intercept_date', '', 'desc')?>차단</a></th>
|
|
<th scope="col" id="th13">그룹</th>
|
|
<th scope="col" id="th14">관리</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<?
|
|
for ($i=0; $row=sql_fetch_array($result); $i++) {
|
|
// 접근가능한 그룹수
|
|
$sql2 = " select count(*) as cnt from $g4[group_member_table] where mb_id = '$row[mb_id]' ";
|
|
$row2 = sql_fetch($sql2);
|
|
$group = "";
|
|
if ($row2[cnt])
|
|
$group = "<a href='./boardgroupmember_form.php?mb_id=$row[mb_id]'>$row2[cnt]</a>";
|
|
|
|
if ($is_admin == 'group')
|
|
{
|
|
$s_mod = "";
|
|
$s_del = "";
|
|
}
|
|
else
|
|
{
|
|
$s_mod = "<a href=\"./member_form.php?$qstr&w=u&mb_id=$row[mb_id]\">수정</a>";
|
|
//$s_del = "<a href=\"javascript:del('./member_delete.php?$qstr&w=d&mb_id=$row[mb_id]');\">삭제</a>";
|
|
$s_del = "<a href=\"javascript:post_delete('member_delete.php', '$row[mb_id]');\">삭제</a>";
|
|
}
|
|
$s_grp = "<a href='./boardgroupmember_form.php?mb_id=$row[mb_id]'>그룹</a>";
|
|
|
|
$leave_date = $row[mb_leave_date] ? $row[mb_leave_date] : date("Ymd", $g4[server_time]);
|
|
$intercept_date = $row[mb_intercept_date] ? $row[mb_intercept_date] : date("Ymd", $g4[server_time]);
|
|
|
|
$mb_nick = get_sideview($row[mb_id], $row[mb_nick], $row[mb_email], $row[mb_homepage]);
|
|
|
|
$mb_id = $row[mb_id];
|
|
if ($row[mb_leave_date])
|
|
$mb_id = "<font color=crimson>$mb_id</font>";
|
|
else if ($row[mb_intercept_date])
|
|
$mb_id = "<font color=orange>$mb_id</font>";
|
|
|
|
?>
|
|
<tr>
|
|
<td headers="th1"><input type="checkbox" id="chk[<?=$i?>]" name="chk[]" value="<?=$i?>"></td>
|
|
<td headers="th2"><?=$mb_id?></td>
|
|
<td headers="th3"><?=$row['mb_name']?></td>
|
|
<td headers="th4"><?=$mb_nick?></td>
|
|
<td headers="th5"><?=get_member_level_select("mb_level[$i]", 1, $member[mb_level], $row[mb_level])?></td>
|
|
<td headers="th6"><a href="point_list.php?sfl=mb_id&stx=<?=$row['mb_id']?>"><?=number_format($row[mb_point])?></a></td>
|
|
<td headers="th7"><?=substr($row[mb_today_login],2,8)?></td>
|
|
<td headers="th8"><?=$row[mb_mailling]?'예':'아니오'?></td>
|
|
<td headers="th9"><?=$row[mb_open]?'예':'아니오'?></td>
|
|
<!-- <td headers="th10"><?=$row[mb_leave_date]?'예':'아니오';?></td> -->
|
|
<td headers="th11"><?=preg_match('/[1-9]/', $row[mb_email_certify])?'예':'아니오'?></td>
|
|
<td headers="th12"><input type="checkbox" name="mb_intercept_date[<?=$i?>]" <?$row['mb_intercept_date']?'checked':''?> value="<?=$intercept_date?>"></td>
|
|
<td headers="th13"><?=$group?></td>
|
|
<td headers="th14"><?=$s_mod?> <?=$s_del?> <?=$s_grp?></td>
|
|
</tr>
|
|
<?
|
|
}
|
|
|
|
if ($i == 0)
|
|
echo '<tr><td colspan="'.$colspan.'">자료가 없습니다.</td></tr>';
|
|
?>
|
|
|
|
</tbody>
|
|
</table>
|
|
|
|
<?
|
|
$pagelist = get_paging($config[cf_write_pages], $page, $total_page, "?$qstr&page=");
|
|
?>
|
|
|
|
<div>
|
|
<input type="button" value='선택수정' onclick="btn_check(this.form, 'update')">
|
|
<input type="button" value='선택삭제' onclick="btn_check(this.form, 'delete')">
|
|
</div>
|
|
|
|
<div><?=$pagelist?></div>
|
|
|
|
<?
|
|
if ($stx)
|
|
echo "<script>document.fsearch.sfl.value = '$sfl';</script>\n";
|
|
?>
|
|
</form>
|
|
|
|
<script>
|
|
// POST 방식으로 삭제
|
|
function post_delete(action_url, val)
|
|
{
|
|
var f = document.fpost;
|
|
|
|
if(confirm("한번 삭제한 자료는 복구할 방법이 없습니다.\n\n정말 삭제하시겠습니까?")) {
|
|
f.mb_id.value = val;
|
|
f.action = action_url;
|
|
f.submit();
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<form name="fpost" method="post">
|
|
<input type="hidden" name="sst" value="<?=$sst?>">
|
|
<input type="hidden" name="sod" value="<?=$sod?>">
|
|
<input type="hidden" name="sfl" value="<?=$sfl?>">
|
|
<input type="hidden" name="stx" value="<?=$stx?>">
|
|
<input type="hidden" name="page" value="<?=$page?>">
|
|
<input type="hidden" name="token" value="<?=$token?>">
|
|
<input type="hidden" name="mb_id">
|
|
</form>
|
|
|
|
<?
|
|
include_once ("./admin.tail.php");
|
|
?>
|