질문 & 답변 게시판
http://www.zeroboard.com/?mid=zb4_tip&search_target=user_name&search_keyword=%EC%B5%9C%EA%B0%95&document_srl=838397
저는 최강 회원님의 현재접속자소스를 사용합니다.
<?
/**************************************************************************************
* 소스 저작권 같은 거 없으니까 원하시면 마음껏 수정하셔도 좋습니다. 소스개발자: 최강..
*************************************************************************************/
// 라이브러리 함수 파일 인크루드
$zero_path="../bbs"; //끝에 /를 붙이면 안됩니다.
require "$zero_path/lib.php";
// 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 $s_que"));
$total_member=$temp2[0];
$total_guest_connect = getNowConnector_num("$zero_path/data/now_connect.php");
// 전체회원수
$temp=mysql_fetch_array(mysql_query("select count(*) from $member_table"));
$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' and no!=1"; else $s_que = " where no = '$member_no' and no!=1";
}
$que = "select * from $member_table $s_que";
$result=mysql_query($que) or Error(mysql_error());
}
// 화면에 출력
echo"<link rel=StyleSheet HREF=style.css type=text/css>
<script language='javascript'>
window.setTimeout('window.location.reload()',300000); //30초마다 리플리쉬 시킨다 1000이 1초가 된다.
</script>
";
echo"<span style='font-size:9pt;'>회원 : $total  </font>";
echo"손님 : $total_guest_connect<br>";
// 접속 멤버가 많을 경우 표 안에서 스크롤바를 만들기 위해 상단 div레이어를 이용함.
$loop_number=$total-($page-1)*$page_num;
while($data=mysql_fetch_array($result)) {
$name=stripslashes($data[name]);
$user_id=stripslashes($data[user_id]);
// 이름으로 출력시 주석 제거
$temp_name = get_private_icon($data[no], "2");
if($temp_name) $name="<img src='$temp_name' border=0 align=absmiddle>";
$temp_name = get_private_icon($data[no], "1");
if($temp_name) $name="<img src='$temp_name' border=0 align=absmiddle> $name";
echo"<a href=javascript:void(window.open('view_info.php?member_no=$data[no]','view_info','width=450,height=530,toolbar=no,menubar=no,scrollbars=auto,resizable=no,left=390,top=150'))>$name</a>님<br>";
}
// MySQL 닫기
if($connect) mysql_close($connect);
?>
그동안 잘사용했는데요 ..
엊그제부터 접속자 회원수가 정해진 일정시간이아니고
시도때도 없이 자기맘대로 초기화 (0명) 되네요
setup.php에서 접속상태시간을 조정을 해도..
소스 member_on_list.php 에서 시간을 길게 설정해도... 소스에서 시간설정을 삭제해도
약 5~ 10분정도 되면 다시 초기화됩니다.
이런경험잇으세요?..
어디가 잘못된건가요?.도저히 모르겠습니다.^^
회원님 오늘도 좋은날되시구요...
하시는일마다 잘~되시길바랍니다.~~^^



출력한 소스에 불필요한 부분이 많은거 같네요.
참고 해 보세요..
<?
$_zb_url = "http://홈주소/제로보드 폴더명/";
$_zb_path = "/절대경로/제로보드 폴더명/";
include $_zb_path."outlogin.php";
$_str = trim(zReadFile($_zb_path."/data/now_member_connect.php"));
if($_str) {
$_str = str_replace("<?/*","",$_str);
$_str = str_replace("*/?>","",$_str);
$_connector = explode(":",$_str);
}
echo"<link rel=StyleSheet HREF=style.css type=text/css>\n";
echo"<script language='javascript'>
window.setTimeout('window.location.reload()',300000); //30초마다 리플리쉬 시킨다 1000이 1초가 된다.
</script>\n";
echo"<span style='font-size:9pt;'>회원 : ".$total_member_connect."</span>\n";
echo" 손님 : ".$total_guest_connect."<br />";
for($i=0;$i<$total_member_connect;$i++) {
$member_no = substr($_connector[$i],12);
$data=mysql_fetch_array(mysql_query("select * from $member_table where no = '$member_no'"));
$name=stripslashes($data[name]);
// 이름으로 출력시 주석 제거
$temp_name = get_private_icon($data[no], "2");
if($temp_name) $name="<img src='$temp_name' border=0 align=absmiddle>";
$temp_name = get_private_icon($data[no], "1");
if($temp_name) $name="<img src='$temp_name' border=0 align=absmiddle> $name";
echo"<a href=javascript:void(window.open('".$_zb_url."view_info.php?member_no=$data[no]','view_info','width=450,height=530,toolbar=no,scrollbars=yes'))>".$name."</a>님<br />";
}
?>