tri-ability/net/module/log/log.lib.php
2023-06-20 10:47:12 +09:00

668 lines
20 KiB
PHP

<?
//*********************************** 접속로그 관련 ******************************************//
//N@LOG 프로그램에 있는 함수 차용 및 수정함. (os정보, browser정보 os+brower체크)
####################################################################################
// os정보
####################################################################################
function getOSversion($os,$array){
$os_version="";
for($i=0;$i<sizeof($array);$i++){
$j=$i+1;
if(preg_match("/$os/i",$array[$i]) && preg_match("/^[0-9]{1,2}([\.]{1}[0-9]{1,2})*[a-z]{0,1}$/i",$array[$j])){
$os_version=$array[$j];
}
}
return $os_version;
}
####################################################################################
// browser정보
####################################################################################
function getBRversion($br,$array){
$br_version="";
for($i=0;$i<sizeof($array);$i++){
$j=$i+1;
if(preg_match("/$br/i",$array[$i]) && preg_match("/^[0-9]{1,2}([\.]{1}[0-9]{1,2})*[a-z]{0,1}$/i",$array[$j])){
$br_version=$array[$j];
}
}
return $br_version;
}
####################################################################################
// os+browser체크
####################################################################################
function getUserAgent(){
$strAgent=$_SERVER["HTTP_USER_AGENT"];
$strAgent=trim(preg_replace("~-|_|=|\+|;~"," ",$strAgent));
$arrAgent=explode(" ",$strAgent);
if(preg_match("/([a-z])+/i",$arrAgent[0])){
$br_version_temp=explode("/",$arrAgent[0]);
}
$br_version_temp=$br_version_temp[1];
if(preg_match("/Win|Window/",$strAgent)){
$os_name="Windows";
if(preg_match("/s 3\.1|n3\.1/",$strAgent)){
$os_version="3.1";
}
if(preg_match("/s 95|n95/",$strAgent)){
$os_version="95";
}
if(preg_match("/s 98|n98/",$strAgent)){
$os_version="98";
}
if(preg_match("/s NT|nNT/",$strAgent)){
$os_version="NT";
}
if(preg_match("/s NT|nNT/",$strAgent) && preg_match("/T 5\.0| 2000/i",$strAgent)){
$os_version="2000";
}
if(preg_match("/s NT|nNT/",$strAgent) && preg_match("/T 5\.1| XP/i",$strAgent)){
$os_version="XP";
}
if(preg_match("/s CE|nCE/",$strAgent)){
$os_version="CE";
}
if(preg_match("/s 9x|n 9x/",$strAgent) || preg_match("/me/i",$strAgent)){
$os_version="Me";
}
}
elseif(preg_match("/Mac PowerPC|PPC/i",$temp)){
$os_name="Mac PowerPC";
$os_version = getOSversion("Mac powerPC",$arrAgent);
}
elseif(preg_match("/Mac/",$temp)){
$os_name="Macintosh";
$os_version = getOSversion("Mac",$arrAgent);
}
elseif(preg_match("/Linux/",$temp)){
$os_name="Linux";
$os_version = getOSversion("Linux",$arrAgent);
}
elseif(preg_match("/IRIX/",$temp)){
$os_name="IRIX";
$os_version = getOSversion("IRIX",$arrAgent);
}
elseif(preg_match("/sunOS/",$temp)){
$os_name="sunOS";
$os_version = getOSversion("sunOS",$arrAgent);
}
elseif(preg_match("/phone/",$temp)){
$os_name="CellPhone";
$os_version = getOSversion("phone",$arrAgent);
}
else{
$os_name="Unknown";
$os_version="";
}
if(preg_match("/MSN/i",$strAgent)){
$br_name="MSN";
$br_version=getBRversion("MSN",$arrAgent);
}
elseif(preg_match("/MSIE/i",$strAgent)){
$br_name="MSIE";
$br_version=getBRversion("MSIE",$arrAgent);
}
elseif(preg_match("/(\[){1}[a-z]{1,3}(\]){1}/i",$strAgent) && preg_match("/\]/i",$strAgent)){
$br_name="Netscape";
$br_version=$br_version_temp;
}
elseif(preg_match("/opera/i",$strAgent)){
$br_name="Opera";
$br_version=getBRversion("Opera",$arrAgent);
if(!$br_version){
$br_version=$br_version_temp;
}
}
elseif(preg_match("/gec|gecko/i",$strAgent)){
$br_name="Gecko";
$br_version=getBRversion("Gecko",$arrAgent);
if(!$br_version){
$br_version=$br_version_temp;
}
}
elseif(preg_match("/MSMB/i",$strAgent)){
$br_name="MSMB";
}
else{
$br_name="Unknown";
}
return array($os_name . $os_version, $br_name . $br_version);
}
//레퍼러에서 도메인 정보 가져오기
function getRefererDomain(){
$arr = explode("/",$_SERVER["HTTP_REFERER"]);
return strtolower($arr[2]);
}
//쿼리스트링에서 검색엔진과 검색엔진 키워드 알아내기
function getSearchKeyword($str_domain){
//$str="http://search.cyworld.com/search/all.html?qn=&s=&f=&bd=&bw=&tq=&z=A&q=%B3%B2%B1%D4%B8%AE&premiumText=&s=";
//$str_domain = "search.cyworld.com";
$query="";
$engin="";
$keyword="";
//검색엔진별 쿼리 키워드
if(preg_match("/.naver.com$/i",$str_domain)){
$engin = "naver.com";
$query = "query";
}else if(preg_match("/.daum.net$/i",$str_domain)){
$engin = "daum.net";
$query = "q";
}else if(preg_match("/.cyworld.com$/i",$str_domain)){
$engin = "cyworld.com";
$query = "q";
}else if(preg_match("/.yahoo.com$/i",$str_domain)){
$engin = "yahoo.com";
$query = "p";
}else if(preg_match("/.nate.com$/i",$str_domain)){
$engin = "nate.com";
$query = "q";
}else if(preg_match("/.paran.com$/i",$str_domain)){
$engin = "paran.com";
$query = "Query";
}
//검색엔진 추가시 위의 주석과 함께 테스트 해본다~
//if($str){
// $arr = explode("&",$str);
if($_SERVER["QUERY_STRING"]){
$arr = explode("&",$_SERVER["QUERY_STRING"]);
for($i=0;$i<count($arr);$i++){
$arr2 = explode("=",$arr[$i]);
if($arr2[0]==$query){
$keyword = $arr2[1];
}
}
}
return array($engin, $keyword);
}
function insertLog(){
// 테이블 지정
$tbl_log = $GLOBALS["_conf_tbl"]["log"]["log"];
$tbl_os = $GLOBALS["_conf_tbl"]["log"]["os"];
$tbl_browser = $GLOBALS["_conf_tbl"]["log"]["browser"];
$tbl_referer = $GLOBALS["_conf_tbl"]["log"]["referer"];
$tbl_domain = $GLOBALS["_conf_tbl"]["log"]["domain"];
$tbl_ip = $GLOBALS["_conf_tbl"]["log"]["ip"];
$tbl_page = $GLOBALS["_conf_tbl"]["log"]["page"];
$tbl_searchengin = $GLOBALS["_conf_tbl"]["log"]["searchengin"];
$tbl_keyword = $GLOBALS["_conf_tbl"]["log"]["keyword"];
$tbl_counter = $GLOBALS["_conf_tbl"]["log"]["counter"];
//데이터 할당
$arrAgent = getUserAgent();
$str_os = $arrAgent[0];
$str_browser = $arrAgent[1];
$str_referer = mysql_real_escape_string(urldecode($_SERVER["HTTP_REFERER"]));
if($str_referer==""){
$str_referer = "직접입력";
}
$str_domain = getRefererDomain();
if($str_domain==""){
$str_domain = "직접입력";
}
$str_ip = $_SERVER["REMOTE_ADDR"];
//$str_page = $_SERVER["SCRIPT_NAME"];
$str_page = $_SERVER["REQUEST_URI"];
$arrQuery = getSearchKeyword($str_domain);
$str_searchengin = $arrQuery[0];
$str_keyword = mysql_real_escape_string(urldecode($arrQuery[1]));
//os 정보 입력
$rs = mysql_query("SELECT idx FROM $tbl_os WHERE os='$str_os'", $GLOBALS["dblink"]);
$total = mysql_num_rows($rs);
if($total > 0){
$os_idx = mysql_result($rs,0);
mysql_query("UPDATE $tbl_os set hit=hit+1 WHERE idx='$os_idx'", $GLOBALS["dblink"]);
}else{
mysql_query("INSERT INTO $tbl_os SET os='$str_os', hit='1'", $GLOBALS["dblink"]);
$os_idx = mysql_insert_id($GLOBALS["dblink"]);
}
//browser 정보 입력
$rs = mysql_query("SELECT idx FROM $tbl_browser WHERE browser='$str_browser'", $GLOBALS["dblink"]);
$total = mysql_num_rows($rs);
if($total > 0){
$browser_idx = mysql_result($rs,0);
mysql_query("UPDATE $tbl_browser set hit=hit+1 WHERE idx='$browser_idx'", $GLOBALS["dblink"]);
}else{
mysql_query("INSERT INTO $tbl_browser SET browser='$str_browser', hit='1'", $GLOBALS["dblink"]);
$browser_idx = mysql_insert_id($GLOBALS["dblink"]);
}
//referer 정보 입력
$rs = mysql_query("SELECT idx FROM $tbl_referer WHERE referer='$str_referer'", $GLOBALS["dblink"]);
$total = mysql_num_rows($rs);
if($total > 0){
$referer_idx = mysql_result($rs,0);
mysql_query("UPDATE $tbl_referer set hit=hit+1 WHERE idx='$referer_idx'", $GLOBALS["dblink"]);
}else{
mysql_query("INSERT INTO $tbl_referer SET referer='$str_referer', hit='1'", $GLOBALS["dblink"]);
$referer_idx = mysql_insert_id($GLOBALS["dblink"]);
}
//domain 정보 입력
$rs = mysql_query("SELECT idx FROM $tbl_domain WHERE domain='$str_domain'", $GLOBALS["dblink"]);
$total = mysql_num_rows($rs);
if($total > 0){
$domain_idx = mysql_result($rs,0);
mysql_query("UPDATE $tbl_domain set hit=hit+1 WHERE idx='$domain_idx'", $GLOBALS["dblink"]);
}else{
mysql_query("INSERT INTO $tbl_domain SET domain='$str_domain', hit='1'", $GLOBALS["dblink"]);
$domain_idx = mysql_insert_id($GLOBALS["dblink"]);
}
//ip 정보 입력
$rs = mysql_query("SELECT idx FROM $tbl_ip WHERE ip='$str_ip'", $GLOBALS["dblink"]);
$total = mysql_num_rows($rs);
if($total > 0){
$ip_idx = mysql_result($rs,0);
mysql_query("UPDATE $tbl_ip set hit=hit+1 WHERE idx='$ip_idx'", $GLOBALS["dblink"]);
}else{
mysql_query("INSERT INTO $tbl_ip SET ip='$str_ip', hit='1'", $GLOBALS["dblink"]);
$ip_idx = mysql_insert_id($GLOBALS["dblink"]);
}
//page 정보 입력
$rs = mysql_query("SELECT idx FROM $tbl_page WHERE page='$str_page'", $GLOBALS["dblink"]);
$total = mysql_num_rows($rs);
if($total > 0){
$page_idx = mysql_result($rs,0);
mysql_query("UPDATE $tbl_page set hit=hit+1 WHERE idx='$page_idx'", $GLOBALS["dblink"]);
}else{
mysql_query("INSERT INTO $tbl_page SET page='$str_page', hit='1'", $GLOBALS["dblink"]);
$page_idx = mysql_insert_id($GLOBALS["dblink"]);
}
//searchengin 정보 입력
$searchengin_idx="";
if($str_searchengin){
$rs = mysql_query("SELECT idx FROM $tbl_searchengin WHERE searchengin='$str_searchengin'", $GLOBALS["dblink"]);
$total = mysql_num_rows($rs);
if($total > 0){
$searchengin_idx = mysql_result($rs,0);
mysql_query("UPDATE $tbl_searchengin set hit=hit+1 WHERE idx='$searchengin_idx'", $GLOBALS["dblink"]);
}else{
mysql_query("INSERT INTO $tbl_searchengin SET searchengin='$str_searchengin', hit='1'", $GLOBALS["dblink"]);
$searchengin_idx = mysql_insert_id($GLOBALS["dblink"]);
}
}
$keyword_idx="";
//keyword 정보 입력
if($str_keyword){
$rs = mysql_query("SELECT idx FROM $tbl_keyword WHERE keyword='$str_keyword'", $GLOBALS["dblink"]);
$total = mysql_num_rows($rs);
if($total > 0){
$keyword_idx = mysql_result($rs,0);
mysql_query("UPDATE $tbl_keyword set hit=hit+1 WHERE idx='$keyword_idx'", $GLOBALS["dblink"]);
}else{
mysql_query("INSERT INTO $tbl_keyword SET keyword='$str_keyword', hit='1'", $GLOBALS["dblink"]);
$keyword_idx = mysql_insert_id($GLOBALS["dblink"]);
}
}
//log 정보 입력
$sql = "INSERT INTO $tbl_log SET
browser='$browser_idx',
domain='$domain_idx',
referer='$referer_idx',
ip='$ip_idx',
searchengin='$searchengin_idx',
keyword='$keyword_idx',
os='$os_idx',
page='$page_idx'
";
mysql_query($sql, $GLOBALS["dblink"]);
//날짜설정
$yyyy = date('Y');
$mm = date('m');
$dd = date('d');
$week = date('w');
$hh = date('G');
//count 정보 입력
$rs = mysql_query("SELECT idx FROM $tbl_counter WHERE yyyy='$yyyy' AND mm='$mm' AND dd='$dd' ", $GLOBALS["dblink"]);
$total = mysql_num_rows($rs);
if($total > 0){
$counter_idx = mysql_result($rs,0);
$hh_sql = "h".$hh."=h".$hh."+1, ";
$sql = "UPDATE $tbl_counter SET
$hh_sql
hit=hit+1
WHERE idx='$counter_idx'
";
mysql_query($sql, $GLOBALS["dblink"]);
}else{
$hh_sql = "h".$hh."=h".$hh."+1, ";
$sql = "INSERT INTO $tbl_counter SET
yyyy='$yyyy',
mm='$mm',
dd='$dd',
week='$week',
$hh_sql
hit='1'
";
mysql_query($sql, $GLOBALS["dblink"]);
}
}
//시간대별 접속자수 표시
function getAccessCounterHourly($s_date, $e_date){
$tbl = $GLOBALS["_conf_tbl"]["log"]["counter"];
$sql = "SELECT ";
for($i=0;$i<24;$i++){
$sql .= "SUM(h".$i.") AS h".$i.", ";
}
$sql .= "SUM(hit) AS hit ";
$sql .= "FROM $tbl ";
$sql .=" WHERE concat(yyyy,'-',mm,'-',dd) >= '$s_date' AND concat(yyyy,'-',mm,'-',dd) <= '$e_date'";
$rs = mysql_query($sql, $GLOBALS["dblink"]);
$total_rs = mysql_num_rows($rs);
if($total_rs > 0){
$list['total'] = $total_rs;
for($i=0; $i < $total_rs; $i++){
$list['list'][$i] = mysql_fetch_assoc($rs);
}
}else{
$list['total'] = 0;
}
return $list;
}
//일별 접속자수 표시
function getAccessCounterDaily($s_date, $e_date){
$tbl = $GLOBALS["_conf_tbl"]["log"]["counter"];
//전체합계
$sql = "SELECT sum(hit) ";
$sql .= "FROM $tbl ";
$sql .=" WHERE concat(yyyy,'-',mm,'-',dd) >= '$s_date' AND concat(yyyy,'-',mm,'-',dd) <= '$e_date'";
$rs = mysql_query($sql, $GLOBALS["dblink"]);
$sum = mysql_result($rs,0,0);
$sql = "SELECT yyyy, mm, dd, week, hit ";
$sql .= "FROM $tbl ";
$sql .=" WHERE concat(yyyy,'-',mm,'-',dd) >= '$s_date' AND concat(yyyy,'-',mm,'-',dd) <= '$e_date'";
//echo $sql;
$rs = mysql_query($sql, $GLOBALS["dblink"]);
$total_rs = mysql_num_rows($rs);
if($total_rs > 0){
$list['total'] = $total_rs;
$list['sum'] = $sum;
for($i=0; $i < $total_rs; $i++){
$list['list'][$i] = mysql_fetch_assoc($rs);
}
}else{
$list['total'] = 0;
$list['sum'] = 0;
}
return $list;
}
//월별 접속자수 표시
function getAccessCounterMonthly($s_date, $e_date){
$tbl = $GLOBALS["_conf_tbl"]["log"]["counter"];
$s_date = substr($s_date,0,7);
$e_date = substr($e_date,0,7);
//전체합계
$sql = "SELECT sum(hit) ";
$sql .= "FROM $tbl ";
$sql .=" WHERE concat(yyyy,'-',mm) >= '$s_date' AND concat(yyyy,'-',mm) <= '$e_date'";
$rs = mysql_query($sql, $GLOBALS["dblink"]);
$sum = mysql_result($rs,0,0);
//echo $sql;
$sql = "SELECT yyyy, mm, sum(hit) as sum_hit ";
$sql .= "FROM $tbl ";
$sql .=" WHERE concat(yyyy,'-',mm) >= '$s_date' AND concat(yyyy,'-',mm) <= '$e_date' GROUP BY mm";
//echo $sql;
$rs = mysql_query($sql, $GLOBALS["dblink"]);
$total_rs = mysql_num_rows($rs);
if($total_rs > 0){
$list['total'] = $total_rs;
$list['sum'] = $sum;
for($i=0; $i < $total_rs; $i++){
$list['list'][$i] = mysql_fetch_assoc($rs);
}
}else{
$list['total'] = 0;
$list['sum'] = 0;
}
return $list;
}
//접속통계 일반 쿼리
function getAccessCounterTable($tbl_type, $s_date, $e_date, $scale, $offset=0){
// 테이블 지정
$tbl = $GLOBALS["_conf_tbl"]["log"]["log"];
$tbl_browser = $GLOBALS["_conf_tbl"]["log"]["browser"];
$tbl_domain = $GLOBALS["_conf_tbl"]["log"]["domain"];
$tbl_referer = $GLOBALS["_conf_tbl"]["log"]["referer"];
$tbl_ip = $GLOBALS["_conf_tbl"]["log"]["ip"];
$tbl_searchengin = $GLOBALS["_conf_tbl"]["log"]["searchengin"];
$tbl_keyword = $GLOBALS["_conf_tbl"]["log"]["keyword"];
$tbl_os = $GLOBALS["_conf_tbl"]["log"]["os"];
$tbl_page = $GLOBALS["_conf_tbl"]["log"]["page"];
$sql = "SELECT count(idx) ";
$sql .= "FROM $tbl ";
$sql .=" WHERE wdate >= '$s_date 00:00:00' AND wdate <= '$e_date 23:59:59'";
$rs = mysql_query($sql, $GLOBALS["dblink"]);
$total_sum = mysql_result($rs,0,0);
if($tbl_type=="os"){
$sql = " SELECT B.os, count(A.idx) AS hit FROM $tbl A, $tbl_os B ";
$sql .=" WHERE A.os=B.idx ";
$sql .=" AND A.wdate >= '$s_date 00:00:00' AND A.wdate <= '$e_date 23:59:59'";
$sql .=" group by A.os ";
$sql .=" order by hit desc ";
}else if($tbl_type=="browser"){
$sql = " SELECT B.browser, count(A.idx) AS hit FROM $tbl A, $tbl_browser B ";
$sql .=" WHERE A.browser=B.idx ";
$sql .=" AND A.wdate >= '$s_date 00:00:00' AND A.wdate <= '$e_date 23:59:59'";
$sql .=" group by A.browser ";
$sql .=" order by hit desc ";
}else if($tbl_type=="ip"){
$sql = " SELECT B.ip, count(A.idx) AS hit FROM $tbl A, $tbl_ip B ";
$sql .=" WHERE A.ip=B.idx ";
$sql .=" AND A.wdate >= '$s_date 00:00:00' AND A.wdate <= '$e_date 23:59:59'";
$sql .=" group by A.ip ";
$sql .=" order by hit desc ";
}else if($tbl_type=="domain"){
$sql = " SELECT B.domain, count(A.idx) AS hit FROM $tbl A, $tbl_domain B ";
$sql .=" WHERE A.domain=B.idx ";
$sql .=" AND A.wdate >= '$s_date 00:00:00' AND A.wdate <= '$e_date 23:59:59'";
$sql .=" group by A.domain ";
$sql .=" order by hit desc ";
}else if($tbl_type=="referer"){
$sql = " SELECT B.referer, count(A.idx) AS hit FROM $tbl A, $tbl_referer B ";
$sql .=" WHERE A.referer=B.idx ";
$sql .=" AND A.wdate >= '$s_date 00:00:00' AND A.wdate <= '$e_date 23:59:59'";
$sql .=" group by A.referer ";
$sql .=" order by hit desc ";
}else if($tbl_type=="page"){
$sql = " SELECT B.page, count(A.idx) AS hit FROM $tbl A, $tbl_page B ";
$sql .=" WHERE A.page=B.idx ";
$sql .=" AND A.wdate >= '$s_date 00:00:00' AND A.wdate <= '$e_date 23:59:59'";
$sql .=" group by A.page ";
$sql .=" order by hit desc ";
}else if($tbl_type=="searchengin"){
$sql = " SELECT B.searchengin, count(A.idx) AS hit FROM $tbl A, $tbl_searchengin B ";
$sql .=" WHERE A.searchengin=B.idx ";
$sql .=" AND A.wdate >= '$s_date 00:00:00' AND A.wdate <= '$e_date 23:59:59'";
$sql .=" group by A.searchengin ";
$sql .=" order by hit desc ";
}else if($tbl_type=="keyword"){
$sql = " SELECT B.keyword, count(A.idx) AS hit FROM $tbl A, $tbl_keyword B ";
$sql .=" WHERE A.keyword=B.idx ";
$sql .=" AND A.wdate >= '$s_date 00:00:00' AND A.wdate <= '$e_date 23:59:59'";
$sql .=" group by A.keyword ";
$sql .=" order by hit desc ";
}
$rs = mysql_query($sql, $GLOBALS["dblink"]);
$total_rs = mysql_num_rows($rs);
//echo $sql;
if($total_rs > 0){
$list['total'] = $total_rs;
$list['total_sum'] = $total_sum;
// 페이지 네비게이션 오프셋 지정.
if(!$offset){
$offset=0;
}else{
$offset=$offset;
}
// offset 이 전체 게시물수보다 작을때 offset 을 전체게시물 - 페이지당 보여줄 글 수로 offset 설정
if($total_rs<=$offset){
$offset = $total_rs - $scale;
}
//scale 0 으로 지정시에는 전체 가져옴
if($scale > 0){
$sql .= " limit $offset,$scale ";
}
$rs = mysql_query($sql,$GLOBALS["dblink"]);
// offset 을 이용한 limit 가 적용된 갯수
$total = mysql_num_rows($rs);
$list['list']['total'] = $total;
// 페이지 네비게이션 오프셋 지정.
for($i=0; $i < $total; $i++){
$list['list'][$i] = mysql_fetch_assoc($rs);
}
}else{
$list['total'] = 0;
$list['total_sum'] = 0;
}
return $list;
}
//접속로그 보기
function getAccessCounterLog($s_date, $e_date, $scale, $offset=0){
// 테이블 지정
$tbl = $GLOBALS["_conf_tbl"]["log"]["log"];
$tbl_browser = $GLOBALS["_conf_tbl"]["log"]["browser"];
$tbl_domain = $GLOBALS["_conf_tbl"]["log"]["domain"];
$tbl_referer = $GLOBALS["_conf_tbl"]["log"]["referer"];
$tbl_ip = $GLOBALS["_conf_tbl"]["log"]["ip"];
$tbl_searchengin = $GLOBALS["_conf_tbl"]["log"]["searchengin"];
$tbl_keyword = $GLOBALS["_conf_tbl"]["log"]["keyword"];
$tbl_os = $GLOBALS["_conf_tbl"]["log"]["os"];
$tbl_page = $GLOBALS["_conf_tbl"]["log"]["page"];
$sql = "SELECT A.idx, A.wdate, B.browser, C.domain, D.referer, E.ip, F.searchengin, G.keyword, H.os, I.page FROM $tbl A
LEFT JOIN $tbl_browser B ON A.browser=B.idx
LEFT JOIN $tbl_domain C ON A.domain=C.idx
LEFT JOIN $tbl_referer D ON A.referer=D.idx
LEFT JOIN $tbl_ip E ON A.ip=E.idx
LEFT JOIN $tbl_searchengin F ON A.searchengin=F.idx
LEFT JOIN $tbl_keyword G ON A.keyword=G.idx
LEFT JOIN $tbl_os H ON A.os=H.idx
LEFT JOIN $tbl_page I ON A.page=I.idx
WHERE 1=1
AND A.wdate >= '$s_date 00:00:00' AND A.wdate <= '$e_date 23:59:59'
";
$sql .= " order by idx desc ";
$rs = mysql_query($sql, $GLOBALS["dblink"]);
$total_rs = mysql_num_rows($rs);
//echo $sql;
if($total_rs > 0){
$list['total'] = $total_rs;
// 페이지 네비게이션 오프셋 지정.
if(!$offset){
$offset=0;
}else{
$offset=$offset;
}
// offset 이 전체 게시물수보다 작을때 offset 을 전체게시물 - 페이지당 보여줄 글 수로 offset 설정
if($total_rs<=$offset){
$offset = $total_rs - $scale;
}
//scale 0 으로 지정시에는 전체 가져옴
if($scale > 0){
$sql .= " limit $offset,$scale ";
}
$rs = mysql_query($sql,$GLOBALS["dblink"]);
// offset 을 이용한 limit 가 적용된 갯수
$total = mysql_num_rows($rs);
$list['list']['total'] = $total;
// 페이지 네비게이션 오프셋 지정.
for($i=0; $i < $total; $i++){
$list['list'][$i] = mysql_fetch_assoc($rs);
}
}else{
$list['total'] = 0;
}
return $list;
}
?>