[G4] 인기검색어 - root님 - 정보
[G4] 인기검색어 - root님 -관련링크
http://hyusig.net/v2/
473회 연결
첨부파일
본문
본 팁은 root님(http://www.threes.org)님의 "인기검색어 생성 및 조회기능"(http://sir.co.kr/?doc=bbs/gnuboard.php&bo_table=tiptech&wr_id=1571)을 G4용으로 수정한것 입니다.
차이점이라면 최소한으로 원본파일에 손을 댔고 테이블 이름이 바뀌었습니다.
질문은 사절합니다. 아는게 없어 답변하기가 힘듭니다.
root님께 미리 허락을 못구했습니다.
죄송합니다.
1. common.lib.php 363라인
======================================== 수정전 =========================================
$pattern .= $bar . str_replace("/", "\/", quotemeta($s[$m]));
$bar = "|";
}
======================================================================================
=>
======================================== 수정후 ==========================================
$pattern .= $bar . str_replace("/", "\/", quotemeta($s[$m]));
$bar = "|";
//////////////////////////////////////////////////////////////////////////////
if(strlen($s[$i]) > 1) insert_popular($s[$i]); // 인기 검색어 등록
////////////////////////////////////////////////////////////////////////////////
}
======================================================================================
2. search_.php 파일을 bbs 디렉토리 아래에 업로드
3. extend 디렉토리 아래에 developer.lib.php을 작성하여 업로드
===================================== developer.lib.php 내용 ====================
<?
if (defined(__FILE__)) return;
define(__FILE__, TRUE);
//인기검색어
function insert_popular($stx)
{
$se_sql = "insert into g4_search set se_datetime = now(), se_word = '$stx'";
sql_query($se_sql);
}
function popular($rows, $fdate)
{
global $g4;
$sql = "select se_word, count(se_word) as pcount
from g4_search
where to_days(now()) - to_days(se_datetime) <= $fdate
group by se_word
order by pcount desc limit 0, $rows ";
$result = sql_query($sql);
// 조회결과설정
// 수정 srch_rows,srch_comment,srch_days,operator의 값을 gnusearch.cfg.php에서 가져와야 하는데
// 일단 이부분을 그누보드의 초기값으로 설정합니다.
for ($i=0; $row = sql_fetch_array($result); $i++) {
$pword .= "<a href=$g4[path]/bbs/search_.php";
$pword .= "?srows=10&gr_id=&sfl=wr_subject%2Bwr_content&sop=and";
$pword .= "&srch_rows=5&srch_comment=1";
$pword .= "&srch_days=0&stx=$row[se_word]>";
// $pword .= "$row[se_word]($row[pcount])</a><b>]</b> ";
$pword .= "$row[se_word]</a> ";
}
mysql_free_result($result);
echo $pword;
}
?>
==============================================================================
4. g4_search 테이블 추가
===================================================================
DROP TABLE IF EXISTS g4_search;
CREATE TABLE g4_search (
se_id int(11) NOT NULL auto_increment,
se_datetime datetime NOT NULL default '0000-00-00 00:00:00',
se_word varchar(50) NOT NULL default '',
PRIMARY KEY (se_id),
KEY index1 (se_word,se_datetime)
) TYPE=MyISAM;
==================================================================
5. 원하는 곳에 아래 소스입력
==================================================
<?=popular(5,30);?>
=====================================================
6. head.php 파일 전체검색 소스 수정
====================================================================
f.action = "<?=$g4[bbs_path]?>/search.php";
=>
f.action = "<?=$g4[bbs_path]?>/search_.php";
====================================================================
차이점이라면 최소한으로 원본파일에 손을 댔고 테이블 이름이 바뀌었습니다.
질문은 사절합니다. 아는게 없어 답변하기가 힘듭니다.
root님께 미리 허락을 못구했습니다.
죄송합니다.
1. common.lib.php 363라인
======================================== 수정전 =========================================
$pattern .= $bar . str_replace("/", "\/", quotemeta($s[$m]));
$bar = "|";
}
======================================================================================
=>
======================================== 수정후 ==========================================
$pattern .= $bar . str_replace("/", "\/", quotemeta($s[$m]));
$bar = "|";
//////////////////////////////////////////////////////////////////////////////
if(strlen($s[$i]) > 1) insert_popular($s[$i]); // 인기 검색어 등록
////////////////////////////////////////////////////////////////////////////////
}
======================================================================================
2. search_.php 파일을 bbs 디렉토리 아래에 업로드
3. extend 디렉토리 아래에 developer.lib.php을 작성하여 업로드
===================================== developer.lib.php 내용 ====================
<?
if (defined(__FILE__)) return;
define(__FILE__, TRUE);
//인기검색어
function insert_popular($stx)
{
$se_sql = "insert into g4_search set se_datetime = now(), se_word = '$stx'";
sql_query($se_sql);
}
function popular($rows, $fdate)
{
global $g4;
$sql = "select se_word, count(se_word) as pcount
from g4_search
where to_days(now()) - to_days(se_datetime) <= $fdate
group by se_word
order by pcount desc limit 0, $rows ";
$result = sql_query($sql);
// 조회결과설정
// 수정 srch_rows,srch_comment,srch_days,operator의 값을 gnusearch.cfg.php에서 가져와야 하는데
// 일단 이부분을 그누보드의 초기값으로 설정합니다.
for ($i=0; $row = sql_fetch_array($result); $i++) {
$pword .= "<a href=$g4[path]/bbs/search_.php";
$pword .= "?srows=10&gr_id=&sfl=wr_subject%2Bwr_content&sop=and";
$pword .= "&srch_rows=5&srch_comment=1";
$pword .= "&srch_days=0&stx=$row[se_word]>";
// $pword .= "$row[se_word]($row[pcount])</a><b>]</b> ";
$pword .= "$row[se_word]</a> ";
}
mysql_free_result($result);
echo $pword;
}
?>
==============================================================================
4. g4_search 테이블 추가
===================================================================
DROP TABLE IF EXISTS g4_search;
CREATE TABLE g4_search (
se_id int(11) NOT NULL auto_increment,
se_datetime datetime NOT NULL default '0000-00-00 00:00:00',
se_word varchar(50) NOT NULL default '',
PRIMARY KEY (se_id),
KEY index1 (se_word,se_datetime)
) TYPE=MyISAM;
==================================================================
5. 원하는 곳에 아래 소스입력
==================================================
<?=popular(5,30);?>
=====================================================
6. head.php 파일 전체검색 소스 수정
====================================================================
f.action = "<?=$g4[bbs_path]?>/search.php";
=>
f.action = "<?=$g4[bbs_path]?>/search_.php";
====================================================================
추천
0
0
댓글 22개
잘보고 공부합니다..
혹시 05.05.20 버전에 까만도둑님이 적용.
역시 부운영자...???
역시 부운영자...???
오우 수고 하셨네요.
그러게요. ㅎㅎ
어찌 되었건 기본으로 적용되었으니 다행입니다.
좋은 일이죠 뭐.
어찌 되었건 기본으로 적용되었으니 다행입니다.
좋은 일이죠 뭐.
까만도둑님께서 고생하셨는데...
05.05.20 버전에서 기본기능으로 적용되었군요.
암턴 까만도둑님 수고하셨구요, 관리자님 감사합니다.
05.05.20 버전에서 기본기능으로 적용되었군요.
암턴 까만도둑님 수고하셨구요, 관리자님 감사합니다.
아~흑...
'까만도둑'님께서 '팁'을 이렇게나 많이...
낼롬 받아 먹기만 하다가는 배탈 날 것 같습니다^^;
고생하셨구요.
탄력 받으신 김에 더 많은 팁들도 부탁드립니다^^;
고거이 한참 들여다 보고 있으면...
3.xx 함수나 변수이던가, g4에서 사용하는 변수던가 헷갈릴 때가 너무나 많아서
이미 손을 놔 버렸는데,
정말 대단하십니다!!!
'까만도둑'님께서 '팁'을 이렇게나 많이...
낼롬 받아 먹기만 하다가는 배탈 날 것 같습니다^^;
고생하셨구요.
탄력 받으신 김에 더 많은 팁들도 부탁드립니다^^;
고거이 한참 들여다 보고 있으면...
3.xx 함수나 변수이던가, g4에서 사용하는 변수던가 헷갈릴 때가 너무나 많아서
이미 손을 놔 버렸는데,
정말 대단하십니다!!!
와우~ 감사합니다...굿굿굿
오웃....감사합니다...
Gooooooooooooooood!!
감사 && 수고하셨습니다. ^^
감사 && 수고하셨습니다. ^^
만약,
2번과 6번 과정을 생략하고자 한다면 bbs/search.php 파일과 developer.lib.php 파일을 수정하시면 됩니다.
bbs/search.php 수정내용은,
첨부의 search_.php 파일과 비교해서 search_.php 파일에서 추가된 부분만 search.php 파일에 추가하시면 됩니다.
developer.lib.php 수정내용은,
$pword .= "<a href=$g4[path]/bbs/search_.php";
=>
$pword .= "<a href=$g4[path]/bbs/search.php";
이렇게 변경하시면 됩니다.
대신 업그레이드 될때마다 수정해 주어야 하는 것도 생각하셔야 합니다.
2번과 6번 과정을 생략하고자 한다면 bbs/search.php 파일과 developer.lib.php 파일을 수정하시면 됩니다.
bbs/search.php 수정내용은,
첨부의 search_.php 파일과 비교해서 search_.php 파일에서 추가된 부분만 search.php 파일에 추가하시면 됩니다.
developer.lib.php 수정내용은,
$pword .= "<a href=$g4[path]/bbs/search_.php";
=>
$pword .= "<a href=$g4[path]/bbs/search.php";
이렇게 변경하시면 됩니다.
대신 업그레이드 될때마다 수정해 주어야 하는 것도 생각하셔야 합니다.
멋집니다.
하하하
인기검색어 - root님 -
감사합니다.
즐거운 하루 되세요!!
즐거운 하루 되세요!!
늦었지만 필요한 팁이라서 낼름 받아 먹습니다~ 고맙습니다~
고수분들 보면....빨랑 공부를 시작해야 할텐데요..
잘 봤습니다.. ^^
좋은팁 잘봤습니다.
고압습니다.
좋은팁 잘봤습니다.
좋은 정보 감사합니다~~^^
정말 감사합니다.^^