게시판내 여분필드 검색을 전체검색을 대상으로 확장할 수 있나요?

게시판내 여분필드 검색을 전체검색을 대상으로 확장할 수 있나요?

QA

게시판내 여분필드 검색을 전체검색을 대상으로 확장할 수 있나요?

본문

아래와 같이 게시판내 검색을 지원해 주는 소스를 사용중에 있는데요.

여분필드 wr_1 , wr_2, wr_3, wr_4, wr_5 에 대해서 다중검색 결과를 볼 수 있습니다.

여분필드에 대해서 전체게시판을 대상으로 확장해서 사용할수 있는 방법이 있을까요?

각 게시판에서는 아래 소스를 가지고 검색을 하면 되는데요.

 

메인페이지에서 전체게시판을 대상으로 wr_1 ~ wr_5 의 조건으로 전체검색이 되게 하고 싶습니다.

예를들어 메인 페이지 전체검색에서 [wr_1 : 2021년 , wr_4: 기출] 을 선택해 검색하면 

모든 게시판에서 2021년 (초,중,고,일반 전체의) 기출 자료가 모두 검색되어 보일 수 있게요.

 

이미 기존 게시판과 데이터들이 아래 소스로 만들어져 있어서요.

전체 검색으로 확장해서 활용하는 부분을 문의 드립니다.

 

        <form name="fsearch" method="get">
                <input type="hidden" name="bo_table" value="<?php echo $bo_table ?>">
                <input type="hidden" name="sop" value="and">
                <label for="sfl" class="sound_only">검색대상</label>
                
            <table class="srch_tbl">
                <caption>통합검색</caption>
                <colgroup>
                        <col class="grid_4">
                        <col>
                </colgroup>
                <tbody>
                <?php if ($is_category) { ?>
                <tr>
                        <th scope="row">게시판 분류</th>
                        <td>
                            <!-- 게시판 카테고리 시작 { -->
                            <select name="sca" id="fsca" class="frm_input">
                            <option value="">전체</option>
                            <?
                            $categories = explode("|", $board['bo_category_list'].($is_admin?"|공지":"")); // 구분자가 | 로 되어 있음
                            for ($i=0; $i<count($categories); $i++) {
                            ?>
                                <option value="<?=$categories[$i]?>"><?=$categories[$i]?></option>
                            <?
                            }
                            ?>
                            </select>
                            <script>$('#fsca').val('<?=$_GET[sca]?>');</script>
                            <!-- } 게시판 카테고리 끝 -->
                        </td>
                </tr>
                <?}?>
                <tr>
                    <th scope="row">날짜선택</th>
                    <td>
                            <select name="wr_1" id="wr_1" class="frm_input">
                            <option value="">년도</option>
                            <option value="2022년">2022년</option>
                            <option value="2021년">2021년</option>
                            <option value="2020년">2020년</option>
                            </select>
                            <script>$("#wr_1").val("<?=$_GET[wr_1]?>")</script>
                            <select name="wr_2" id="wr_2" class="frm_input">
                            <option value="">월</option>
                            <option value="12월">12월</option>
                            <option value="11월">11월</option>
                            <option value="10월">10월</option>
                            <option value="09월">09월</option>
                            <option value="08월">08월</option>
                            <option value="07월">07월</option>
                            <option value="06월">06월</option>
                            <option value="05월">05월</option>
                            <option value="04월">04월</option>
                            <option value="03월">03월</option>
                            <option value="02월">02월</option>
                            <option value="01월">01월</option>
                            </select>
                            <script>$("#wr_2").val("<?=$_GET[wr_2]?>")</script>                                            
                    </td>
                </tr>
                <tr>
                    <th scope="row">교육대상</th>
                    <td>
                        <label><input type="checkbox" name="wr_3[]" value="초등" > 초등 </label> 
                        <label><input type="checkbox" name="wr_3[]" value="중등" > 중등 </label> 
                        <label><input type="checkbox" name="wr_3[]" value="고등"> 고등 </label> 
                        <label><input type="checkbox" name="wr_3[]" value="일반"> 일반 </label> 
                        <script>
                            var str_wr_3 = "<?=@implode('|',$_GET[wr_3])?>";
                            $("input:checkbox[name='wr_3[]']").each(function(index){
                                if(str_wr_3.indexOf($(this).val()) > -1){
                                    $(this).attr("checked", true);
                                }
                            });
                        </script>
                    </td>
                </tr>                

                <tr>
                    <th scope="row">자료유형</th>
                    <td>
                        <label><input type="checkbox" name="wr_4[]" value="개념" > 개념 </label> 
                        <label><input type="checkbox" name="wr_4[]" value="기초" > 기초 </label> 
                        <label><input type="checkbox" name="wr_4[]" value="실전"> 실전 </label> 
                        <label><input type="checkbox" name="wr_4[]" value="기출"> 기출 </label> 
                        <script>
                            var str_wr_4 = "<?=@implode('|',$_GET[wr_4])?>";
                            $("input:checkbox[name='wr_4[]']").each(function(index){
                                if(str_wr_4.indexOf($(this).val()) > -1){
                                    $(this).attr("checked", true);
                                }
                            });
                        </script>
                    </td>
                </tr>  

           <tr>
                <th scope="row">자료명</th>
                <td><input type="text" name="wr_5" value="<?=@$write['wr_5']?>" class="frm_input"></td>
          </tr>
                <tr>
                        <th scope="row">통합검색</th>
                        <td>
                            <select name="sfl" id="sfl" style='display:none;'>
                                <option value="wr_subject||wr_content||wr_1||wr_2||wr_3||wr_4||wr_5||wr_6||wr_7||wr_8||wr_9||wr_10">통합검색</option>
                            </select>
                            <input type="text" name="stx" value="<?php echo stripslashes($stx) ?>" id="stx" class="frm_input" size="25" maxlength="20" placeholder=" 검색어를 입력해주세요"> 
                            <input type="submit" value="검색" id="btn05">
                        </td>
                </tr>
                </form>
            </table>
        </form>

이 질문에 댓글 쓰기 :

답변 3

bbs/search.php

으로 수정 개발 해보세요

좋은정보 감사합니다.  전체검색을 살펴보는데 많은 도움이 되겠네요.
그런데 제목+내용|제목|내용 등은 각각이 다른 필드인데, 이것 대신 여분필드 (예를들어 wr_3의 값 : 초등|중둥|고등|일반) 을 선택할 수 있게 하는 부분을 모르겠네요.
조금 더 상세한 설명이나 관련링크라도 도움 주실 수 있을까요?

https://sir.kr/gujik/1203 에 저의핸드폰 번호가 있습니다

핸드폰으로 연락주시면 대답 해드릴게요

시험 문제 관리? 하는 기능인가 보군요.

자료가 많지 않다면

우선은 게시판 하나만 사용하시는 것을 추천합니다.

이렇게 하는 것이 작업하기 편합니다.

그누보드는 대용량에는 적합하지 않기 때문에 

차후 문제 수가 몇 백만 이상 늘어나는 경우는 튜닝 또는 DB 재설계까지 생각하셔야 합니다.

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

회원로그인

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