구간 검색을 시도하고 있습니다.

구간 검색을 시도하고 있습니다.

QA

구간 검색을 시도하고 있습니다.

답변 4

본문

구간 검색을 시도하고 있습니다.

아래의 소스 한 번 봐주세요.

감사합니다.

검색이 안됩니다.

 

====================================

 

function detailSearchYM(key, value) {
    var sYear = Math.round(document.getElementsByName("eight11")[0].value);
    var eYear = Math.round(document.getElementsByName("eight12")[0].value);
    if(key == 1) { // 시작년
        if(sYear > eYear) eYear = sYear;
    } else if(key == 3) { // 종료년
        if(!sYear) sYear = eYear;
        if(sYear > eYear) sYear = eYear;
    }
    document.getElementsByName("eight11")[0].value = sYear;
    document.getElementsByName("eight12")[0].value = eYear;
}

function detailSearchTon(value) {
    if(value == "") {
        document.getElementsByName("eight10")[0].value = "";
        return;
    }
    if(value == 99) {
        document.getElementsByName("eight10")[0].value = 99;
        return;
    }
    var obj = document.getElementsByName("eight10")[0];
    for(var i = 0; i < obj.length; i ++) {
        if(obj[i].value == value) {
            if(value != 4.5) obj[i].selected = true;
            else obj[i + 7].selected = true;
            return;
        }
    }
}


<div data-for="eight09" class="col-lg-6 col-md-12 col-sm-12 form-group">
<select name="eight09" data-form-field="eight09" class="form-control display-7" id="eight09" onchange="detailSearchTon(this.value);">

                                <option value="">톤수선택부터</option>
                                <option value='1'>1톤</option>
                                <option value='1.2'>1.2톤</option>
                                <option value='2.5'>2.5톤</option>
                                <option value='3.5'>3.5톤</option>
                                <option value='4.5'>4.5톤</option>
                                <option value='5'>5톤</option>
                                <option value='6'>6톤</option>
                                <option value='6.5'>6.5톤</option>
                                <option value='7'>7톤</option>
                                <option value='7.5'>7.5톤</option>
                                <option value='8'>8톤</option>
                                <option value='8.5'>8.5톤</option>
                                <option value='9.5'>9.5톤</option>
                                <option value='11'>11톤</option>
                                <option value='11.5'>11.5톤</option>
                                <option value='14'>14톤</option>
                                <option value='14.5'>14.5톤</option>
                                <option value='15'>15톤</option>
                                <option value='15.5'>15.5톤</option>
                                <option value='16'>16톤</option>
                                <option value='17.5'>17.5톤</option>
                                <option value='18'>18톤</option>
                                <option value='18.5'>18.5톤</option>
                                <option value='19'>19톤</option>
                                <option value='20'>20톤</option>
                                <option value='21'>21톤</option>
                                <option value='22'>22톤</option>
                                <option value='22.5'>22.5톤</option>
                                <option value='23'>23톤</option>
                                <option value='23.5'>23.5톤</option>
                                <option value='24'>24톤</option>
                                <option value='25'>25톤</option>
                                <option value='99'>기타</option>
                            </select>
                            <script>$("#eight09").val("<?=$_GET[eight09]?>")</script>
                            
                            

<select name="eight10" data-form-field="eight10" class="form-control display-7" >

                                <option value="">톤수선택까지</option>                                 
                                <option value='1'>1톤</option>
                                <option value='1.2'>1.2톤</option>
                                <option value='2.5'>2.5톤</option>
                                <option value='3.5'>3.5톤</option>
                                <option value='4.5'>4.5톤</option>
                                <option value='5'>5톤</option>
                                <option value='6'>6톤</option>
                                <option value='6.5'>6.5톤</option>
                                <option value='7'>7톤</option>
                                <option value='7.5'>7.5톤</option>
                                <option value='8'>8톤</option>
                                <option value='8.5'>8.5톤</option>
                                <option value='9.5'>9.5톤</option>
                                <option value='11'>11톤</option>
                                <option value='11.5'>11.5톤</option>
                                <option value='14'>14톤</option>
                                <option value='14.5'>14.5톤</option>
                                <option value='15'>15톤</option>
                                <option value='15.5'>15.5톤</option>
                                <option value='16'>16톤</option>
                                <option value='17.5'>17.5톤</option>
                                <option value='18'>18톤</option>
                                <option value='18.5'>18.5톤</option>
                                <option value='19'>19톤</option>
                                <option value='20'>20톤</option>
                                <option value='21'>21톤</option>
                                <option value='22'>22톤</option>
                                <option value='22.5'>22.5톤</option>
                                <option value='23'>23톤</option>
                                <option value='23.5'>23.5톤</option>
                                <option value='24'>24톤</option>
                                <option value='25'>25톤</option>
                                <option value='99'>기타</option>
                            </select>                             
                            <script>$("#eight10").val("<?=$_GET[eight10]?>")</script>

</div>


<div data-for="eight11" class="col-lg-6 col-md-12 col-sm-12 form-group">
<select name="eight11" data-form-field="eight11" class="form-control display-7" id="eight11" onchange="detailSearchYM(1, this.value);">


                                <option value="">연식선택부터</option>
                                <option value="2021년">2021년</option>
                                <option value="2020년">2020년</option>
                                <option value="2019년">2019년</option>
                                <option value="2018년">2018년</option>
                                <option value="2017년">2017년</option>
                                <option value="2016년">2016년</option>
                                <option value="2015년">2015년</option>
                                <option value="2014년">2014년</option>
                                <option value="2013년">2013년</option>
                                <option value="2012년">2012년</option>
                                <option value="2011년">2011년</option>
                                <option value="2010년">2010년</option>
                                <option value="2009년">2009년</option>
                                <option value="2008년">2008년</option>
                                <option value="2007년">2007년</option>
                                <option value="2006년">2006년</option>
                                <option value="2005년">2005년</option>
                                <option value="2004년">2004년</option>
                                <option value="2003년">2003년</option>
                                <option value="2002년">2002년</option>
                                <option value="2001년">2001년</option>    
                            </select>
                            <script>$("#eight11").val("<?=$_GET[eight11]?>")</script>

<select name="eight12" data-form-field="eight12" class="form-control display-7" id="eight12" onchange="detailSearchYM(3, this.value);"> 
                                <option value="">연식선택까지</option>                                 
                            <option value='2021'>2021년</option>
                                <option value='2020'>2020년</option>
                                <option value='2019'>2019년</option>
                                <option value='2018'>2018년</option>
                                <option value='2017'>2017년</option>
                                <option value='2016'>2016년</option>
                                <option value='2015'>2015년</option>
                                <option value='2014'>2014년</option>
                                <option value='2013'>2013년</option>
                                <option value='2012'>2012년</option>
                                <option value='2011'>2011년</option>
                                <option value='2010'>2010년</option>
                                <option value='2009'>2009년</option>
                                <option value='2008'>2008년</option>
                                <option value='2007'>2007년</option>
                                <option value='2006'>2006년</option>
                                <option value='2005'>2005년</option>
                                <option value='2004'>2004년</option>
                                <option value='2003'>2003년</option>
                                <option value='2002'>2002년</option>
                                <option value='2001'>2001년</option>
                            </select>   
                        
                            <script>$("#eight12").val("<?=$_GET[eight12]?>")</script>
                            

</div>
 

이 질문에 댓글 쓰기 :

답변 4

/bbs/list.php 

 

} else {
    $sql_search = "";

    $total_count = $board['bo_count_write'];
}

코드 아래에 추가

 

if ($eight09 && $eight10)
    $sql_search .= " and [톤수 칼럼] between '{$eight09}' and '{$eight10}' ";

 

if ($eight11 && $eight12)
    $sql_search .= " and [연식 칼럼] between '{$eight11}' and '{$eight12}' ";

마르스컴퍼니님, 답변 감사합니다.

 

톤수 칼럼 / 연식 칼럼 이란, 아래와 같이 하면 되나요?

 


if ($eight09 && $eight10)
    $sql_search .= " and [wr_8] between '{$eight09}' and '{$eight10}' ";

 

if ($eight11 && $eight12)
    $sql_search .= " and [wr_8] between '{$eight11}' and '{$eight12}' ";
 

아래와 같이 했습니다.

그런데 작동을 안합니다.

제가 어디를 잘 못 했는지요?

 

        <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>

                <input type="hidden" name="sfl"  value="wr_subject||wr_1||wr_2||wr_3||wr_4">

 

 

if ($eight09 && $eight10)
    $sql_search .= " and wr_8 between '{$eight09}' and '{$eight10}' ";

 

if ($eight11 && $eight12)
    $sql_search .= " and wr_8 between '{$eight11}' and '{$eight12}' ";

연식이 저장되는 칼럼이 wr_8 이 아닐 듯 하고..

제가 얘기한 소스는 /bbs/list.php 에 들어가야 될 것으로 생각한 소스입니다.

----------------------------

질문이 이해하기 어려운 상태에서, 나름 생각한 바를 얘기드렸습니다만..

제가 생각하기에는.. 잘못된 부분/방향이 꽤 많은 듯 해서...

지금 상황에서는.. 제가 더이상 답을 드리기 어려울 것 같고,
Q&A 를 통해서도 해결하기가 어려워 보입니다.
제작의뢰에 의뢰를 해보시는 것을  https://sir.kr/main/request/
검토해보는 것이 어떨까 싶습니다.

마르스컴퍼니님, 답변 감사합니다. 

공부중입니다.

저장은 되고 있습니다. 검색부분에서 제가 잘못 하고 있는 것 같아요.

 

<?php
$c_8 = explode("|",$write['wr_8']);  // 차량기본정보
$eight01 = $c_8[0];   // 
$eight02 = $c_8[1];   // 미사용  - 년 선택 - 년식 년 - 연식부터 ~ 까지
$eight03 = $c_8[2];   // 미사용  - 월 선택 - 년식 월

$eight04 = $c_8[3];   // 미사용 - 배기량
$eight05 = $c_8[4];   // 사용연료 
$eight06 = $c_8[5];   // 변속기 
$eight07 = $c_8[6];   // 주행거리 
$eight08 = $c_8[7];   // 차량번호 


$eight09 = $c_8[8];   // 톤수부터
$eight10 = $c_8[9];   // 톤수까지


$eight11 = $c_8[10];   // 연식부터
$eight12 = $c_8[11];   // 연식까지
$eight13 = $c_8[12];   // 월 선택


$c_9 = explode("|",$write['wr_9']);  // 판매자정보
$nine01 = $c_9[0];   // 판매자
$nine02 = $c_9[1];   // 연락처
$nine03 = $c_9[2];   // 상사
$nine04 = $c_9[3];   // 주소

?>

 

답변을 작성하시기 전에 로그인 해주세요.
전체 2
© SIRSOFT
현재 페이지 제일 처음으로