검색창 검색어를 저장해서 다른 페이지에 부르는 방법

검색창 검색어를 저장해서 다른 페이지에 부르는 방법

QA

검색창 검색어를 저장해서 다른 페이지에 부르는 방법

본문

검색창 검색어를 저장해서 다른 페이지에 부르는 방법

 

이게 별거 아니면서도 좀 자질구레한 질문이긴 한데요...

메인페이지의 검색창에 입력된 검색어를 search.skin.php스킨에서 받아서 쓰려고 합니다.

검색어의 $stx를 다른 변수에 넣어서 검색결과페이지로 변수 글자 그대로 넘겨 받고 싶습니다.

 

메인페이지에서 "올림픽 월드컵 아시안게임"이라고 입력했다고 가정할 때

(메일페이지에서 검색어 글자 제한은 풀어버렸음)

검색결과 페이지에서 그대로 불러오고 싶은데 "올림픽 월드컵"만 불려와 집니다.

$t_stx = $stx; 이렇게 해 봤는데 되지 않네요.

 

생각해 보니, 그누보드의 검색기능은 무조건 두 단어까지만 검색결과 페이지로 넘기는 것 때문인 것 같습니다. 물론 bbs디렉토리의 파일들을 수정하면 되겠지만 저는 코어를 건드리지 않고 스킨 파일에서만 수정을 하고 싶거든요...

 

그래서 궁금한 것은,

1. head.php에서 검색창 stx를 따로 저장.

2. 스킨의 search.skin.php에서 다른 변수로 저장하며 받기.

3. 기본 search.php 등을 건드리지 않기.

 

제가 잘 몰라서 그렇지 뭔가 간단한 방법이 있을 거 같은데, 도움을 좀 부탁드립니다.

검색어를 텍스트 그대로 받아서 텍스트로 표시하려는 것입니다. 자르거나 변형하지 않고 그대로 말이죠.

php 코드나 소스를 부탁드립니다.

이 질문에 댓글 쓰기 :

답변 1

1. head.php에서 검색창 stx를 따로 저장.

따로 지정할 필요없습니다.

/bbs/search.php 파일에서 stx 값을 공백을 이용해서 검색어를 2개만 사용하게끔 변환하기 때문에

스킨의 search.skin.php 파일에서 $_GET['stx']로 받으시면 풀텍스트로 받으실 수 있습니다.

 

2. 스킨의 search.skin.php에서 다른 변수로 저장하며 받기.

위에서 설명드린 검색어 $_GET['stx']를 이용해서 검색용 테이블에 해당 필드 추가해서 저장하시면 됩니다.

 

3. 기본 search.php 등을 건드리지 않기.

위 방식으로 하면 search.php 파일은 안건드리게 되죠..

 

하지만 검색부분 쿼리가 search.php 파일에 존재하게 때문에 실제 검색은 두단어만 검색됩니다.

그렇다면 애서 필드추가해서 풀텍스트 검색어가 그냥 저장되는 개념밖에는 안됩니다.

 

검색어를 2개 이하로 둔 이유는 디비부화 및 속도 때문입니다.

 

이점을 무시하고 3단어 까지 검색되게 하고 싶으시면 간단하게 파일 3개만 수정하시면 됩니다.

 

1. 테마사용시 테마 하위에 head.php 과 search.skin.php 파일에서 검색단어 체크부분 스크립트를 주석문으로 처리합니다.

2. /bbs/search.php 파일 여셔서 63줄쯤에 보시면

 $s = array_slice($s, 0, 2); 이부분이 있습니다. 

 $s = array_slice($s, 0, 3); 로 수정합니다.

 

 

답변을 작성하시기 전에 로그인 해주세요.
전체 38
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT