묻고답하기

 일단 이전,다음 기능을 제로보드XE에서 쓸 수가 있게 됐는데요
검색을 하면 검색결과 내에서 이전, 다음이 가능하게 하고 싶습니다....
현재는 검색과는 상관없이 무조건 그냥 이전글과 다음글을 보여주거든요...


id: 라르게덴 (cbrghost)님께 여쭤봤더니


modules/document/document.model.php 파일에서
getDocumentList 함수를 찾아보세요... 거기에 // 검색 옵션 정리 이 부분을
그대로 가져와서 써야 합니다.
당연히 거기에 $output = executeQuery("document.getDocumentList", $division_args);
라고 있는데요 modules/document/queries/getDocumentList.xml 파일에 나오는데로
제가 만든 쿼리가 바뀌어야 하죵...


이렇게 답변해주셨는데요
(뒤에 쿼리를 바꾼다는 것은... 이해를 할 것도 같고... 해서 일단 급하지는 않고요...)
검색 옵션 정리 부분은 아래요...


            // 검색 옵션 정리
            $search_target = $obj->search_target;
            $search_keyword = $obj->search_keyword;
            if($search_target && $search_keyword) {
                switch($search_target) {
                    case 'title' :
                    case 'content' :
                            if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
                            $args->{"s_".$search_target} = $search_keyword;
                            $use_division = true;
                        break;
                    case 'title_content' :
                            if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
                            $args->s_title = $search_keyword;
                            $args->s_content = $search_keyword;
                            $use_division = true;
                        break;
                    case 'user_id' :
                            if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
                            $args->s_user_id = $search_keyword;
                            $args->sort_index = 'documents.'.$args->sort_index;
                        break;
                    case 'user_name' :
                    case 'nick_name' :
                    case 'email_address' :
                    case 'homepage' :
                            if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
                            $args->{"s_".$search_target} = $search_keyword;
                        break;
                    case 'is_notice' :
                    case 'is_secret' :
                            if($search_keyword=='Y') $args->{"s_".$search_target} = 'Y';
                            else $args->{"s_".$search_target} = '';
                        break;
                    case 'member_srl' :
                    case 'readed_count' :
                    case 'voted_count' :
                    case 'comment_count' :
                    case 'trackback_count' :
                    case 'uploaded_count' :
                            $args->{"s_".$search_target} = (int)$search_keyword;
                        break;
                    case 'regdate' :
                    case 'last_update' :
                    case 'ipaddress' :
                            $args->{"s_".$search_target} = $search_keyword;
                        break;
                    case 'comment' :
                            $args->s_comment = $search_keyword;
                            $query_id = 'document.getDocumentListWithinComment';
                            $use_division = true;
                        break;
                    case 'tag' :
                            $args->s_tags = str_replace(' ','%',$search_keyword);
                            $query_id = 'document.getDocumentListWithinTag';
                        break;
                    default :
                            preg_match('/^extra_vars([0-9]+)$/',$search_target,$matches);
                            if($matches[1]) {
                                $args->{"s_extra_vars".$matches[1]} = $search_keyword;
                                $use_division = true;
                            }
                        break;
                }
            }

            /**


그리고 이전 다음 글을 출력하는 함수는 아래요...


function getDocumentDivision($document_srl,$type,$order){ 

            $oDocumentModel = &getModel('document'); 
            $oDocument = $oDocumentModel->getDocument($document_srl, ''); 
     
                $args->module_srl = $oDocument->get('module_srl'); 
 
                if($order == 'list_order') { 
                    $args->list_order = $oDocument->get('list_order'); 
                    $args->sort_index = '+ '+ 'list_order'; 
                } elseif($order == 'update_order') { 
                    $args->update_order = $oDocument->get('update_order'); 
                    $args->sort_index = 'update_order'; 
                } 
                if($type == 'next' || $type == 'next2')    $args->order_type = 'desc';
                elseif($type == 'prev'  || $type == 'prev2')    $args->order_type = 'asc'; 

                if($type == 'next2' || $type == 'prev2')    $args->list_count = 2;
                elseif($type == 'next' || $type == 'prev')  $args->list_count = 1;
                $args->page_count = 1; 
                $args->page = 1; 

                if($type == 'next2' || $type == 'next') $output = executeQuery("document.getNextDivision", $args);
                elseif($type == 'prev' || $type == 'prev2') $output = executeQuery("document.getPrevDivision", $args); 
 
                if($output->data) { 
                    $data = array_pop($output->data); 
                    $division_document->document_srl = $data->document_srl;
                    $division_document->title = $data->title;
                    $division_document->nick_name = $data->nick_name;
                    $division_document->comment_count = $data->comment_count;
                    $division_document->module_srl = $data->module_srl;
                    $division_document->object = $oDocumentModel->getDocument($data->document_srl);

                } 

            return $division_document; 
        } 


검색결과를 이전,다음 출력하는 함수에 그대로 가져와서 쓰는 방법을 알고싶습니다.
설명을 해도 제가 워낙 초보라서 그러는데요
 (php책 이제 막 보기 시작했어요... 이전 다음기능 구현하고 싶어서... 그런데 초급인 저로써는 넘 어렵네요) 
알기 쉽게 설명좀요 ^^; (대충이라도 어떤 코드를 어디쯤에 넣어야 하는것좀;;)

글쓴이 제목 최종 글
XE 공지 글 쓰기,삭제 운영방식 변경 공지 [16] 2019.03.05 by 남기남
sweeper 외부로그인에 대한 질문입니다 [1] 2008.06.03 by 백성찬
양수철515 기본카운터 위젯 플래시 카운터가 이상해요. [1] file 2008.06.03 by 老姜君
이슈카ㆀ 조아라같은 소설 커뮤니티처럼 [2] file 2008.06.03 by 이슈카ㆀ
탑심 게시글 마다 그룹별 공개 여부 file  
지우529 파일 첨부시 한글이 바로 사용되지 않습니다. [3] 2008.06.03 by LunarDream
이영훈 회원 정보 공유 방법좀 알려주세요... [1] 2008.06.03 by 덱스터
러셀크로우 포인트 내역은 확인이 안되나요 ? [2] 2008.06.03 by 러셀크로우
ooagathaoo 계시판사용중 질문이생겼어요.  
이슈카ㆀ 로그인창 안의 저장함 보기 [2] 2008.06.03 by 이슈카ㆀ
김병화999 가끔씩 페이지가 굉장히 느리게 열리네요.  
지우529 1차메뉴와 본문의 간격이 생깁니다. [2] file 2008.06.03 by 지우529
양수철515 총 회원수에 해당하는 치환자가 있는지요..?  
봄처녀 서브 레이아웃 수정.. file  
뽕쓰 rewirte 모드 문의드립니다  
꾸벅맨 최신버전 업데이트후 ㅠ  
강창근808 제로보드 에라 [5] file 2008.06.03 by 강창근808
젤르 Parse error... 같은에러 계속뜹니다..ㅠ 밑에도 올렸지만 해결못했어요 (추가) [2] file 2008.06.03 by 젤르
김재순 관리자는 포인트 올라가지 않게..  
울랄라끼이잉 서명에 html허용 [1] 2008.06.03 by 백성찬
이원호225 회원정보 이전 문제 [2] file 2008.06.03 by 이원호225
+하이리진+ 댓글에 IP가 안나오게 하려면? 제목 가운데 정렬? [1] 2008.06.03 by 백성찬
신성민 글쓰기 하면 에러가...  
mean550 로고이미지 플래쉬로 넣기!! [1] 2008.06.03 by magici
미령전설 검색결과 내에서만 이전,다음 사용하는 방법  
하늘나라ㅠㅠ 게시판 분류... 복사하는 방법은...?? [1] 2008.06.03 by 물통
왼손매직 rss등록 질문  
zzzx 알려주세요. [1] 2008.06.03 by 백성찬
dstori 로그인후에 새쪽지 갯수를 볼수있게 할수 없을까요? [2] 2008.06.02 by dstori
데오필로 타 사이트 이미지 링크하여 보여주기? [2] 2008.06.02 by 데오필로
뽀칠이 여러분 비회원 다운로드 되나요? [5] 2008.06.02 by 하늘(skycheer)