PHP 추천검색어 + 검색결과 뽑아오기
2006.02.08 11:53

http://www.snowsoft.co.kr/bbs/view.php?wuser_id=download&category_no=&no=77&u_no=8&pg=1임창남추천검색어 + 검색결과 뽑아오기입니다. 위에보시는 이미지와 같은 형태이구요.
일단 미리보기를 보시기 바랍니다.
미리보기 : http://sample.snowsoft.co.kr/naver/search.php
압축을 풀면 안에 있는 설명.txt 파일을 읽어보신후 설치 또는 수정을 하시기 바랍니다.
아래는 설명.txt 내용
실시간 검색어는 15초에 한번씩 db내용을 파일로 저장하는 방식을 사용했습니다.
사용자가 많을경우 reload를 계속 하는 방식보다 15초마다 파일로 저장해 그 내용을 보여주는게 더 효과적이라는 생각때문입니다.
혹시 다른 형태의 방식이 있으면 imcn@naver.com 으로 메일주세요
실시간 검색은 시간별로 저장되어있는 cn필드의 내용을 비워주고 order_cn 필드에 30위까지의 순위를 저장합니다.
검색어 TOP10은 30일 마다 total필드의 내용을 비워주고 order_total 필드에 30위까지의 순위를 저장합니다.
실시간 검색및 검색어 Top10에 들어가있는 Copyright snowsoft.co.kr 의 텍스트는 지우시면 안됩니다.
대신에 현재와 같이 안보이게 집어넣으시는건 상관없습니다. 텍스트로 넣으셔야 합니다.
위의 것만 지켜주신다면 어디에 사용하셔도 무관합니다.
======================사용방법 및 설정방법======================
lib.php 파일에
$yp_host = "localhost";
$yp_user = "아이디";
$yp_pw = "비밀번호";
$yp_db = "db명";
부분을 자신에 맞게 수정해주세요
$sql = "CREATE TABLE search_table (
no int(11) NOT NULL auto_increment,
skey varchar(50) NOT NULL default '',
cn int(11) NOT NULL default '0',
order_cn int(11) NOT NULL default '0',
total int(11) NOT NULL default '0'+ ',
order_total int(11) NOT NULL default '0',
PRIMARY KEY (no),
KEY skey (skey),
KEY cn (cn)
)";
테이블을 생성해줍니다.
total_hit_word_tmp.php
now_hit_word_tmp.php
clear_date.php
위 3개의 파일은 권한을 707로 주셔야 합니다.
search.php 파일을 열으시면 아래 스크립트 파일의 url을 맞게 고쳐주세요
<SCRIPT LANGUAGE="JavaScript">
<!--
form_name = "search_form";
input_name = "skey";
width = "204";
String_cnt = "10";//글자수
String_time = "50";//글자 나오는속도
new_retime = "10000";//실시간 검색어 다시 불러오는 시간 1000이 1초
url = "http://localhost/~test/naver/";
search_link = "http://localhost/~test/naver/search_ok.php?skey=";
run_search(form_name,input_name,width,url);
//-->
</SCRIPT>
댓글 9
-
오혜성
2006.02.08 19:04
-
메모리스
2006.02.08 22:24
먼저 좋은 프로그램 공개해 주셔서 감사합니다.
프로그램에 아는게 없는 저로서는 설명해 주신데로 하긴 했는데...
설치해보니... 검색시 에러가 나고 검색어들도 화면에 나타나지 않더군요!!
왜 그러는지... 미리보기 링크해 놓을테니 한번 봐주시면 안될까요?
http://storyone.com/2006/naver/search.php
-
임창남
2006.02.08 23:44
//오혜성님
기간은 정할수 있습니다. 그리고 관리자가 미리 정한 단어를 사용할수도 있구요.
//메모리스님
http://sample.snowsoft.co.kr/naver/now_hit_word.php.phps
http://sample.snowsoft.co.kr/naver/total_hit_word.php.phps
이두개 파일 바꿔보고 해보세요. -
오혜성
2006.02.09 01:39
search_ok.php 31라인 에러있어요.
fwrite($f,"<?phprn$total_date = "".$total_date_clear."";$ecn_clear = "".$e_field."";rmrn?>");
이걸 아래처럼 수정해야 될거 같은데요.
fwrite($f,"<?phprn$total_date = "".$total_date_clear."";rn$ecn_clear = "".$e_field."";rn?>");
추천검색어를 관리자가 지정하려면, 따로 테이블을 생성해야하나요?
좀 복잡해질거 같은데... 어떤식으로 해야 하는지 조언좀...^^;;
아님 메모장에 지정 검색어를 넣어놓구 매칭을 해야하는지... -
오혜성
2006.02.09 01:41
그리고, 추천 검색어 http://sample.snowsoft.co.kr/naver/search.php 에서..
"검"을 타이핑후 키보드 방향키로 몇번 위/아래로 왔다갔다하면 스크립트 오류뜨던데요. -
오혜성
2006.02.09 01:57
그리고, 초보자분들은.. 테이블 생성이 힘든데... 자동으로 해주시징...^^;;
lib.php 아래 부분을..
$sql = "CREATE TABLE search_table (
no int(11) NOT NULL auto_increment,
skey varchar(50) NOT NULL default '',
cn int(11) NOT NULL default '0',
order_cn int(11) NOT NULL default '0',
total int(11) NOT NULL default '0',
order_total int(11) NOT NULL default '0',
PRIMARY KEY (no),
KEY skey (skey),
KEY cn (cn)
)";
아래처럼 수정..해주세요.
$check_table = @mysql_query("select no from search_table limit 0, 1");
if(!$check_table) {
$sql = "CREATE TABLE search_table (
no int(11) NOT NULL auto_increment,
skey varchar(50) NOT NULL default '',
cn int(11) NOT NULL default '0',
order_cn int(11) NOT NULL default '0',
total int(11) NOT NULL default '0',
order_total int(11) NOT NULL default '0',
PRIMARY KEY (no),
KEY skey (skey),
KEY cn (cn)
)";
mysql_query($sql) or die(mysql_error());
} -
설성찬
2006.02.12 12:56
siche search랑 연동하는 방법좀 가르쳐주세요^^ 메모리스님의 사이트에는 연동이 잘되던데...제가 아직 배우는 단계라 잘 모르겠군요^^ -
박영효
2006.02.22 10:55
'php.search_table' 테이블이 생성되지 않았다고하는데 어떻게 하죠? -
유대열
2007.01.26 22:42
검색을 하니깐'';;
Parse error: parse error, unexpected '=' in /home/xkx0707/html/bbs/naver/clear_date.php on line 2
뭐가 문제죠?? clear_date.php 파일에 있는 문서도 보여줄께요
검색하니깐 저러네요 ㅠ
<?php
$total_date = "1141885847";
$ecn_clear = "cn";
?>

근데 검색시 추천 검색어 있잖아요.
이것도 30일이 지나면 사라지나요?
그리고, 이걸 관리자가 미리 지정 해서 저장 할 수는 없는지도 궁금합니다.