특정 페이지 접속자를 불러올수 있을찌요~... 채택완료
예를들어 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 을 기록하는 부분을 확인해보세요.
댓글을 작성하려면 로그인이 필요합니다.
그누보드 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 ";
답변에 대한 댓글 2개
위의 소스를 보면 특정페이지의 기준이 없는데~ 어디서 설정을 해야 하는지요~.
abcd.com/now/index.php 이 페이지에 접속자만 뽑아 내야 하는 부분인데 그걸 지정하는 부분은 없어 보입니다.
댓글을 작성하려면 로그인이 필요합니다.
가능할 것 같은데요.
/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 와 같이 들어가야 할 것 같네요.
저도 초보자라 도움이 될 지 모르겠네요.
답변에 대한 댓글 1개
일단은 확인후에 비교하면서 넣어봤는데 에러가 나네요~
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
그누보드4 current_connect.php랑 비교하면서 해보겠습니다.