두 그룹으로 나눠진 각각의 홈페이지에서 사용하려고 그룹별 현재접속자 출력하는 방법을 찾다가 이것저것 꿰맞추고 이곳에서 주신 답을 가지고 구현한 겁니다. 구현이라기 보다는 짜맞추기에 가깝겠네요^^;
기쁜마음에 혹시 이런팁을 찾는분이 계실까해서 올려봅니다.
전체소스는 아니고, 각자 사용하는 접속자 출력소스를 보면 비슷한 부분들이 있을겁니다.
해당되는 부분만 참고하시면 쉽게 되리라 생각합니다.
=========================================================================================
// DB 연결
$connect=dbConn();
// 멤버정보 구하기
$member=member_info();
if(!$page&&!$status) $status=1;
// 그룹데이타 읽어오기;;
$group_data=mysql_fetch_array(mysql_query("select * from $group_table where no='$member[group_no]'"));
// 검색어 처리;;
if($keyword) {
if(!$status) $s_que=" where user_id = '$keyword' or name = '$keyword' ";
}
// 로그인 회원의 수
$temp2=mysql_fetch_array(mysql_query("select count(*) from $member_table where group_no=3 $s_que"));
$total_member=$temp2[0];
// 전체회원수
$temp=mysql_fetch_array(mysql_query("select count(*) from $member_table where group_no=3"));
$total_member=$temp[0];
if($status) {
$_str = trim(zReadFile("$zero_path/data/now_member_connect.php"));
if($_str) {
$_str = str_replace("<?/*","",$_str);
$_str = str_replace("*/?>","",$_str);
$_connector = explode(":",$_str);
$total = count($_connector);
}
} else $total=$total_member;
// 페이지 계산
$page_num=100;
$total_page=(int)(($total-1)/$page_num)+1; // 전체 페이지 구함
if(!$page) $page=1;
if($page>$total_page) $page=1; // 페이지가 전체 페이지보다 크면 페이지 번호 바꿈
$start_num=($page-1)*$page_num; // 페이지 수에 따른 출력시 첫번째가 될 글의 번호 구함
// 데이타 뽑아오는 부분
// 오프라인 멤버
if(!$status) {
$que="select * from $member_table $s_que order by no desc limit $start_num,$page_num";
$result=mysql_query($que) or Error(mysql_error());
// 온라인 멤버
} else {
$endnum = $start_num + $page_num;
if($endnum>$total) $endnum=$total;
unset($s_que);
for($i=$start_num;$i<$endnum;$i++) {
$member_no = substr($_connector[$i],12);
if($s_que) $s_que .= " or no = '$member_no' "; else $s_que = " where (no = '$member_no' ";
}
$que = "select * from $member_table $s_que) and (group_no=3) ";
$result=mysql_query($que) or Error(mysql_error());
}
// 화면에 출력
echo"<link rel=StyleSheet HREF=zumanji_style.css type=text/css>
<script language='javascript'>
window.setTimeout('window.location.reload()',50000); //10초마다 리플리쉬 시킨다 1000이 1초가 된다.
</script>
<div align=right>";
echo"전체회원수 : $total_member 분<br>";
// 접속 멤버가 많을 경우 표 안에서 스크롤바를 만들기 위해 상단 div레이어를 이용함.
$loop_number=$total-($page-1)*$page_num;
while($data=mysql_fetch_array($result)) {
$name=stripslashes($data[name]);
// 특정이름 안보이게
if($name == "홍길동")
continue;
// 끝
$user_id=stripslashes($data[user_id]);
// 특정ID 안보이게
if($user_id == "abcde")
continue;
// 끝
echo"<img src=img/ho.gif border=0><a href=javascript:void(window.open('../view_info.php?member_no=$data[no]','view_info','width=400,height=510,toolbar=no,scrollbars=yes')) onfocus=blur()> $name</a> 님<br>";
$loop_number--;
}
====================================================================
특정인을 출력에서 제외할때는, 사용하는 접속자 출력 소스에 보면 $user_id=stripslashes($data[user_id]); 이런식의 부분이 있을겁니다. 그 아래에 if($user_id == "abcde") continue; 를 추가하면 abcde라는 아이디는 제외가 됩니다.
이것은 여러개의 아이디를 추가해서 사용해도 가능하구요.
아이디가 아닌 이름을 제외할때는 name의 홍길동이라는 부분을 추가하시면 되겠구요.
그룹별로 특정 그룹만 출력을 하고 싶을때는 알맞은 위치에 group_no=그룹넘버 만 추가하면 됩니다.(위 소스에서 group_no 이 들어간 부분 // 로그인회원수 //전체회원수 //온라인멤버 뽑는 부분)
원본 소스는 여기서 받은건데...어느분건지 잊어버렸네요. (__)
엉성한 부분이 있으면 지적바랍니다.
출처 : http://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&keyword=그룹&select_arrange=headnum&desc=asc&no=5805
기쁜마음에 혹시 이런팁을 찾는분이 계실까해서 올려봅니다.
전체소스는 아니고, 각자 사용하는 접속자 출력소스를 보면 비슷한 부분들이 있을겁니다.
해당되는 부분만 참고하시면 쉽게 되리라 생각합니다.
=========================================================================================
// DB 연결
$connect=dbConn();
// 멤버정보 구하기
$member=member_info();
if(!$page&&!$status) $status=1;
// 그룹데이타 읽어오기;;
$group_data=mysql_fetch_array(mysql_query("select * from $group_table where no='$member[group_no]'"));
// 검색어 처리;;
if($keyword) {
if(!$status) $s_que=" where user_id = '$keyword' or name = '$keyword' ";
}
// 로그인 회원의 수
$temp2=mysql_fetch_array(mysql_query("select count(*) from $member_table where group_no=3 $s_que"));
$total_member=$temp2[0];
// 전체회원수
$temp=mysql_fetch_array(mysql_query("select count(*) from $member_table where group_no=3"));
$total_member=$temp[0];
if($status) {
$_str = trim(zReadFile("$zero_path/data/now_member_connect.php"));
if($_str) {
$_str = str_replace("<?/*","",$_str);
$_str = str_replace("*/?>","",$_str);
$_connector = explode(":",$_str);
$total = count($_connector);
}
} else $total=$total_member;
// 페이지 계산
$page_num=100;
$total_page=(int)(($total-1)/$page_num)+1; // 전체 페이지 구함
if(!$page) $page=1;
if($page>$total_page) $page=1; // 페이지가 전체 페이지보다 크면 페이지 번호 바꿈
$start_num=($page-1)*$page_num; // 페이지 수에 따른 출력시 첫번째가 될 글의 번호 구함
// 데이타 뽑아오는 부분
// 오프라인 멤버
if(!$status) {
$que="select * from $member_table $s_que order by no desc limit $start_num,$page_num";
$result=mysql_query($que) or Error(mysql_error());
// 온라인 멤버
} else {
$endnum = $start_num + $page_num;
if($endnum>$total) $endnum=$total;
unset($s_que);
for($i=$start_num;$i<$endnum;$i++) {
$member_no = substr($_connector[$i],12);
if($s_que) $s_que .= " or no = '$member_no' "; else $s_que = " where (no = '$member_no' ";
}
$que = "select * from $member_table $s_que) and (group_no=3) ";
$result=mysql_query($que) or Error(mysql_error());
}
// 화면에 출력
echo"<link rel=StyleSheet HREF=zumanji_style.css type=text/css>
<script language='javascript'>
window.setTimeout('window.location.reload()',50000); //10초마다 리플리쉬 시킨다 1000이 1초가 된다.
</script>
<div align=right>";
echo"전체회원수 : $total_member 분<br>";
// 접속 멤버가 많을 경우 표 안에서 스크롤바를 만들기 위해 상단 div레이어를 이용함.
$loop_number=$total-($page-1)*$page_num;
while($data=mysql_fetch_array($result)) {
$name=stripslashes($data[name]);
// 특정이름 안보이게
if($name == "홍길동")
continue;
// 끝
$user_id=stripslashes($data[user_id]);
// 특정ID 안보이게
if($user_id == "abcde")
continue;
// 끝
echo"<img src=img/ho.gif border=0><a href=javascript:void(window.open('../view_info.php?member_no=$data[no]','view_info','width=400,height=510,toolbar=no,scrollbars=yes')) onfocus=blur()> $name</a> 님<br>";
$loop_number--;
}
====================================================================
특정인을 출력에서 제외할때는, 사용하는 접속자 출력 소스에 보면 $user_id=stripslashes($data[user_id]); 이런식의 부분이 있을겁니다. 그 아래에 if($user_id == "abcde") continue; 를 추가하면 abcde라는 아이디는 제외가 됩니다.
이것은 여러개의 아이디를 추가해서 사용해도 가능하구요.
아이디가 아닌 이름을 제외할때는 name의 홍길동이라는 부분을 추가하시면 되겠구요.
그룹별로 특정 그룹만 출력을 하고 싶을때는 알맞은 위치에 group_no=그룹넘버 만 추가하면 됩니다.(위 소스에서 group_no 이 들어간 부분 // 로그인회원수 //전체회원수 //온라인멤버 뽑는 부분)
원본 소스는 여기서 받은건데...어느분건지 잊어버렸네요. (__)
엉성한 부분이 있으면 지적바랍니다.
출처 : http://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&keyword=그룹&select_arrange=headnum&desc=asc&no=5805