까

[G4] 인기검색어 - root님 -

· 2005-05-19 (목) 12:15:00 · 7627 · 22
본 팁은 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";
====================================================================

첨부파일

search_.php (9.9 KB) 61회 2005-06-15 14:47
|

댓글 22개

잘보고 공부합니다..
2005-05-21 (토) 00:47:18
혹시 05.05.20 버전에 까만도둑님이 적용.

역시 부운영자...???
오우 수고 하셨네요.
2005-05-20 (금) 23:50:13
그러게요. ㅎㅎ
어찌 되었건 기본으로 적용되었으니 다행입니다.
좋은 일이죠 뭐.
까만도둑님께서 고생하셨는데...
05.05.20 버전에서 기본기능으로 적용되었군요.
암턴 까만도둑님 수고하셨구요, 관리자님 감사합니다.
아~흑...
'까만도둑'님께서 '팁'을 이렇게나 많이...
낼롬 받아 먹기만 하다가는 배탈 날 것 같습니다^^;

고생하셨구요.
탄력 받으신 김에 더 많은 팁들도 부탁드립니다^^;

고거이 한참 들여다 보고 있으면...
3.xx 함수나 변수이던가, g4에서 사용하는 변수던가 헷갈릴 때가 너무나 많아서
이미 손을 놔 버렸는데,
정말 대단하십니다!!!
와우~ 감사합니다...굿굿굿
오웃....감사합니다...
Gooooooooooooooood!!
감사 && 수고하셨습니다. ^^
2005-05-19 (목) 12:22:34
만약,
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";
이렇게 변경하시면 됩니다.

대신 업그레이드 될때마다 수정해 주어야 하는 것도 생각하셔야 합니다.
멋집니다.
2005-08-08 (월) 11:17:11
하하하
인기검색어 - root님 -
감사합니다.
즐거운 하루 되세요!!
늦었지만 필요한 팁이라서 낼름 받아 먹습니다~ 고맙습니다~
고수분들 보면....빨랑 공부를 시작해야 할텐데요..
2007-04-03 (화) 15:25:27
잘 봤습니다.. ^^
2007-04-29 (일) 11:04:17
좋은팁 잘봤습니다.
고압습니다.
2007-10-18 (목) 15:56:14
좋은팁 잘봤습니다.
2012-12-27 (목) 15:45:17
좋은 정보 감사합니다~~^^
2013-03-25 (월) 19:28:00
정말 감사합니다.^^
댓글을 작성하시려면 로그인이 필요합니다.

그누4 팁자료실

3,309건

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요. 나누면 즐거움이 커집니다.

+