누가누가 내홈에서 뭐하나? > 그누4 스킨

그누4 스킨

스킨의 저작권은 해당 스킨 제작자님께 있으며, 그누보드의 저작권과 다를 수 있습니다.
스킨 다운로드시 좋아요와 감사의 코멘트를 남기시면 제작자에게 큰 힘이됩니다. ^^y
그누보드와 관련이 있지만 스킨과 빌더가 아니면 플러그인 게시판에 올려주세요.

누가누가 내홈에서 뭐하나? 정보

방문자 누가누가 내홈에서 뭐하나?

첨부파일

luna(3).zip (3.2K) 209회 다운로드 2005-06-17 11:41:22

본문

과연 스킨일까요?

1. 압축을 풀어 최상위 폴더에 업로드후

2. hesd.sub.php 상단에 아래의 내용을 추가 합니다

//////////////////////////////////////////누가누가 모할까요

$cfg[table_log]        = "g4_log";          // 로그인 테이블2 (접속자수)
$location =  $HTTP_SERVER_VARS[REQUEST_URI]."→".addslashes($g4[title]);
if (!$location)
    $location =$lo_location;
# 접속시간을 INSERT 하고
$sql = " insert into $cfg[table_log]
            set lo_ip2 = '$_SERVER[REMOTE_ADDR]',
                lo_referer2 = '$SERVER[HTTP_REFERER]',
                mb_id2 = '$member[mb_id]',
                lo_datetime2 = '$g4[time_ymdhis]',
                lo_location2 = '$location' ,
                lo_loc='$_SERVER[REQUEST_URI]' ";
@sql_query($sql);
//////////////////////////////////////////////

3. http://urdomain/log_log2.php를 실행시킨후
 
    비우기 보단(botton)을 눌러서

    데이터 베이스를 생성 합니다.

  이는 비우고 디비를 재생성합니다.
 
  "께끗하게 비웠다"는 메세지와 함께
 
  log_log2.php로 돌아옵니다...

4. 감사합니다.
추천
2
  • 복사

댓글 전체

1. (./_common.php)을 정상적으로 인식하지 못했습니다.
=> 해당 파일의 경로와 log_log2.php파일 경로가 동일한지 확인하십시오.

2. Fatal error: Call to undefined function: alert() in d:\vip\midas.weple.net\log_log2.php on line 25
=> _common.php파일은 궁극적으로 common.php파일 내용을 끌어(연결됩니다)옵니다.
common.php파일은 라이브러리 함수와 연결되며, 각종 정보를 기록하는 파일입니다.
(gnu3.xx 버전의 index.php 파일과 기능상 동일 함.)

따라서, 아이피 정보, 방문자가 머물러 있는 현재 웹페이지 경로 등을 인식하지 못해서,
log_log2.php파일에서 DB에 저장된 정보를 추출하려는 작업을 억지로 수행하려고 하기 때문에
해당 오류가 발생합니다.

3. 오류내용을 보아하니... 윈도우apm 환경으로 보입니다.
윈도우 apm일 경우는


config.php 최하단에 위치한 $g4[url] 정보를 기입해 보시기 바랍니다.
// config.php 가 있는곳의 웹경로. 뒤에 / 를 붙이지 마세요.
// 예) http://g4.sir.co.kr
$g4[url] = "http://localhost/gnuboard4"; // 만약 로컬에서 작업중이라면,
 http://localhost/gnuboard4 와 같은 형식으로 기입. (또는 http://127.0.0.1 로 기입)
아공...번거롭게 안 해드리려고 했는데...본의 아니게 여쭤보게 되었네요...

log_log2.php를 웹상에서 불러오니 아래와 같은 메세지가 나옵니다.....
저의 무지를 용서하시고 한 수 부탁드립니다...죄송합니다...^^

Warning: main(./_common.php): failed to open stream: No such file or directory in d:\vip\midas.weple.net\log_log2.php on line 6

Warning: main(): Failed opening './_common.php' for inclusion (include_path='.') in d:\vip\midas.weple.net\log_log2.php on line 6

Warning: main(/head.php): failed to open stream: No such file or directory in d:\vip\midas.weple.net\log_log2.php on line 11

Warning: main(): Failed opening '/head.php' for inclusion (include_path='.') in d:\vip\midas.weple.net\log_log2.php on line 11

Fatal error: Call to undefined function: alert() in d:\vip\midas.weple.net\log_log2.php on line 25
햐...넘겨주는 값을 수정해서 테스트 해 보시라고 코멘트를 수정하려니까
답변이 달린 코멘트라고 수정이 안되네요^^;

감사합니다.
로그체크만 2가지 돌려보다가, 만도님의 자료로 해결 되었습니다.

$lo_location, 또 하나는 검색결과를 추출하는 갯수에서,
추출된 아이피에 대해 페이징이 정상적으로 안되었던 부분.
(임의의 로그클릭 -> 폼에 입력된 특정아이피를 검색 =>여기까지는 정상이었지만...
맨 하단에서 특정페이로 이동하면, 아이피 마지막 자리에 지정된 정렬갯수($row=숫자)만큼
플러스가 되버리는 문제점...

햐... 정말 정말 개운합니다.
감사합니다 *^^*
흐... 공개랄것 까지는 없구요.
똑같은 내용에 액션만 어찌되나 돌려 본건데요.
까만도둑님은 잠깐 보셨을 겁니다.
다시 한 번 감사드립니다.
요 녀석 해결되서 너무 너무 홀가분(?!)하네요^^;


<input type=hidden name='ipsort' value='<?=$ipsort?>'>아이피만 뽑아보기
구문에서...
1. value='<?=$url?>'로 때려(?!)버리는 방법(현재 경로로 돌려주기)
2. value='<?=$g4[path]l?>/log_log2.php'로 직접 파일을 때려버리는 방법(1.과 비슷한 효과)
  (개운하게 지워버려서 두번째 방법은 잘 기억이 나질 않네요^^;)


3. 로그기록을 출력해 주는 부분에서는 기존의 gnu3.xx에서 처럼 string.lib.php에 있는 파일 내용중에서
문자열을 끌어 오는 함수가 정의되어 있었습니다.(urlautolink라는 함수로 정의되어 있었음)
바로 이 부분 때문에 처음에 헷갈렸었는데요.
gnu3.xx : urlautolink  ===> g4 : url_auto_link 로 함수명 변경(common.lib.php, 내용은 동일 함.)

바로 하단처럼 함수를 직접 찍어 줬었지요. 아이피랑 경로를 끌어오지 못하는 문제 때문에...
설치경로 하위의 디렉토리에서도 테스트를 했었기 때문인지도 모르겠습니다.
직접 함수를 호출하니, 처음에 묵묵부답이던 녀석들이 대꾸를 하더군요^^;

<TABLE width=100% cellpadding=4 style='border:1px solid #cccccc;padding:5px' class='ht4'>
<tr>
    <td width=20><?=$p?>.</td><td width=140> <?=$member[mb_name]?></td><td width='' style='color:#575757;'><a href='<?=$row2[lo_loc]?>'><?=$row2[lo_location2]?></a></td>
</tr>
<tr>
    <td  width=20> </td><td width=140>(<?=$row2[lo_datetime2]?>)</td><td width='' style='color:#575757;'><?=url_auto_link($row2[lo_referer2]);?></td>
</tr>
</table>
log_log.php

86~96 줄과 174~185 내용을 아래와 같이 바꾸어 주세요..

 if ($row2[mb_id2]) {
    if ($is_admin) {
        $mb_name = $row2[mb_name]; }
        else {    // 관리자가 아니라면 IP 주소를 감춘후 보여줍니다.
          $mb_name =$row2[mb_name]."(". preg_replace("/([0-9]+).([0-9]+).([0-9]+).([0-9]+)/", "\\1.♡.\\3.\\4", $row2[lo_ip2]).")";
        }
    } else {  if ($is_admin) {
                  $mb_name =$row2[mb_name]."(". $row2[lo_ip2]. ")";
        } else {    // 관리자가 아니라면 IP 주소를 감춘후 보여줍니다.
            $mb_name = "손님(".preg_replace("/([0-9]+).([0-9]+).([0-9]+).([0-9]+)/", "\\1.♡.\\3.\\4", $row2[lo_ip2]) .")";
        }
  }
와우... 감사합니다*^^*

=========================================================
$cfg[table_log]        = "g4_log";          // 로그인 테이블2 (접속자수)
$location =  $HTTP_SERVER_VARS[REQUEST_URI]."→".addslashes($g4[title]);
if (!$location)
    //$location =$doc; //gnu3.xx버전 내용
    //$location =$g4; //수정한 내용
    $location =$lo_location;//2005.06.17 mando님! 수정한 내용
=========================================================


아... 제가 바로 요 아래 소스코드 한 줄 땜시 며칠을 머리 아파 했었는지...ㅜ.x;
에구 에구...
>>>    $location =$lo_location;//2005.06.17 mando님! 수정한 내용
=========================================================


//mando님!
잠시 접근권한만 주석처리해 주실 수 있으신가요?
특정아이피 검색 폼을 전송해 주는데 약간의 문제점이 있는 것 같습니다만...
바로 gnu3.xx 버전에서 처럼 $doc이 인식되는 문제입니다.
풀려있습니다..

<input type=hidden name=doc value='<?=$doc?>'>아이피만 뽑아보기 <input type=text name=ip size=15 maxlength=15 class=input value="<?=$ip?>">&nbsp;<input type=submit value=" 검 색 " class=button>&nbsp;<input type=button value=" 전체보기" onclick="location='<?="$g4[path]/log_log2.php"?>'" class=button>
감사합니다.
바로 이 부분에서 value값이 제대로 정의되지 않았습니다.
<input type=hidden name=doc value='<?=$doc?>'>아이피만 뽑아보기

로그기록 목록에서 특정아이피를 클릭한 후,
검색(정렬)된 페이지에서 입력폼에 특정 아이피가 포함되었다면,
다시 한번 '아이피만 뽑아보기'를 클릭해 보시기 바랍니다.

===> 결과 : $g4[path]로 선언된 그누보드 설치 경로로 리턴시켜 버립니다.
이상하지만 이렇게 하니 해결이 되는듯하네요..^^

<form name=loglist method=get action="log_log2.php" autocomplete=on>
<tr>
<td style='color:#575757;font-weight:bold' width=55%><?if ($member[mb_level] >= $cfg[level_max]) {?>
<a href='<?=$g4[path]?>/who_is_it.php' style='color:RED;font-weight:bold'>비우기</a> | <?}?>
<a href='<?=$ipsort?>'>아이피별 정렬</a> |
<a href='<?=$timesort?>'>시간대별정렬(최근)</a> |
<a href='<?=$timesort2?>'>시간대별정렬(역순)</a></td>
</td>
<td>
<input type=hidden name='ipsort' value='<?=$ipsort?>'>아이피만 뽑아보기 <input type=text name=ip size=15 maxlength=15 class=input value="<?=$ip?>">&nbsp;<input type=submit value=" 검 색 " class=button>&nbsp;<input type=button value=" 전체보기" onclick="location='<?="$g4[path]/log_log2.php"?>'" class=button>
</td>
</tr>
</form>
웹상에서 log_log2.php를 불러오니까

insert into g4_log set lo_ip2 = '211.171.122.84', lo_referer2 = '', mb_id2 = '', lo_datetime2 = '2006-02-07 13:58:45', lo_location2 = '/log_log2.php→최고의 필리핀 하숙 - 루나하숙에서 누가누가 머할까요? 보는중......' , lo_loc='/log_log2.php'

1146 : Table 'omg58.g4_log' doesn't exist

error file : /log_log2.php

 이런 글이 뜨네요. 왜 그런 건지...
mysqladmin에서 g4_log테이블을 생성해야 합니다.

===============================
CREATE TABLE g4_log (
  lo_ip2 varchar(15) NOT NULL default '',
  mb_id2 varchar(20) NOT NULL default '',
  lo_datetime2 datetime NOT NULL default '0000-00-00 00:00:00',
  lo_location2 varchar(255) NOT NULL default '',
 lo_referer2 varchar(255) NOT NULL default '',
 lo_loc text NOT NULL,
  KEY `lo_datetime` (`lo_datetime2`,`mb_id2`)
)TYPE=MyISAM;
======================================
© SIRSOFT
현재 페이지 제일 처음으로