특정 페이지 접속자를 불러올수 있을찌요~...
본문
예를들어 abcd.com/now/index.php
위처럼 특정 페이지에 회원이 접속 해 있을때 이 리스트 를 뽑아내려고 합니다.
생각 해보거늘... 현재접속자 abcd.com/bbs/current_connect.php 에서
특정 링크 부분에 접속을 한 회원만 뽑아 낸다거나 말입니다.
어떤식으로 해야 할까요~
답변 3
g4 소스를 보지 못해서 정확하진 않습니다만.
head.sub.php 16줄부터
// 현재 접속자
// 게시판 제목에 ' 포함되면 오류 발생
$g5['lo_location'] = addslashes($g5['title']);
if (!$g5['lo_location'])
$g5['lo_location'] = $_SERVER['REQUEST_URI'];
$g5['lo_url'] = $_SERVER['REQUEST_URI'];
if (strstr($g5['lo_url'], '/'.G5_ADMIN_DIR.'/') || $is_admin == 'super') $g5['lo_url'] = '';
에서 $g5[lo_url] 에 REQUEST_URI 가 기록됩니다. ( /now/index.php?key=var)
이 부분을 current_connect.php 에서
$tmp = parse_url($g5['lo_url'] ? $g5['lo_url'] : $_SERVER['REQUEST_URI']);
$url_check = empty($tmp['path']) ? false : $tmp['path'] ;
$g5['lo_url'] 선언되어있을때는 lo_url 로 없으면 $_SERVER['REQUEST_URI'] 를 parse_url 해서
파라메터를 제외한 경로명 path (/now/index.php) 만 가져온뒤
쿼리문에 lo_url 을 검색하는 구조입니다.
$g5
[
'login_table'
]
에 lo_url 기록하는 부분을 보면 REQUEST_URI 를 기록하는데
그렇게 되면 파라메터까지 기록되므로 검색할때는 like 문으로 %를 포함하여 검색하면됩니다.
검색이 되지 않는다면 lo_url 을 기록하는 부분을 확인해보세요.
!-->가능할 것 같은데요.
/bbs/current_connect.php에서 where로 조건을 주면 될 것 같네요. (방금 테스트 해봤습니다.)
9번째 줄에 아래와 같은 쿼리가 있는데 where 절 뒤에 a.lo_url을 추가하면 될 것 같아요
$sql = " select a.mb_id, b.mb_nick, b.mb_name, b.mb_email, b.mb_homepage, b.mb_open, b.mb_point, a.lo_ip, a.lo_location, a.lo_url
from $g4[login_table] a left join $g4[member_table] b on (a.mb_id = b.mb_id)
where a.mb_id <> '$config[cf_admin]' and a.lo_url = '/now/index.php'
order by a.lo_datetime desc ";
홈페이지가 루트에 설치되어 있다면 위 처럼 하시면 되고
예를들어 최상위 g5 폴더에 설치되어 있어서 접속이 http://도메인/g5 라면 작은 따옴표 안에 /g5/now/index.php 와 같이 들어가야 할 것 같네요.
저도 초보자라 도움이 될 지 모르겠네요.
!-->그누보드 5 current_connect.php 소스 수정입니다.
$tmp = parse_url($g5['lo_url'] ? $g5['lo_url'] : $_SERVER['REQUEST_URI']);
$url_check = empty($tmp['path']) ? false : $tmp['path'] ;
$sql = " select a.mb_id, b.mb_nick, b.mb_name, b.mb_email, b.mb_homepage, b.mb_open, b.mb_point, a.lo_ip, a.lo_location, a.lo_url
from {$g5['login_table']} a left join {$g5['member_table']} b on (a.mb_id = b.mb_id)
where a.mb_id <> '{$config['cf_admin']}'";
if($url_check) $sql.=" and a.lo_url like '{$url_check}%' ";
$sql.=" order by a.lo_datetime desc ";
!-->