Files
firstgarden-web-gnu/adm/member_list.php
2012-10-31 18:19:05 +09:00

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&amp;sod=desc&amp;sfl=<?=$sfl?>&amp;stx=<?=$stx?>' title='차단된 회원부터 출력'>차단 : <?=number_format($intercept_count)?></a>,
<a href='?sst=mb_leave_date&amp;sod=desc&amp;sfl=<?=$sfl?>&amp;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&amp;w=u&amp;mb_id=$row[mb_id]\">수정</a>";
//$s_del = "<a href=\"javascript:del('./member_delete.php?$qstr&amp;w=d&amp;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&amp;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&amp;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");
?>