질문하나 드릴께요. > 그누3질답

그누3질답

질문하나 드릴께요. 정보

그누보드 질문하나 드릴께요.

본문

현재 게시판 검색을 응용해서 추가필드도 검색을 하려하고 있거든요.

이팁만 뚜러져라 쳐다보고 있었는데 날이 밝아 버렸네요...
혹 이팁 구현하신분 있으면 소스와 함께 공개 좀 부탁드립니다.
http://sir.co.kr/?doc=bbs/gnuboard.php&bo_table=tiptech&wr_id=2855&sselect=wr_subject&stext=검색&soperator=1&srch_rows=10&srch_comment=1&srch_days=0

댓글 전체

뒤에(위,아래 2군데다..) INSTR문에서보면 괄호 ) 가 빠졌네요...앞에는 괄호를 2개를 여는데 왜 닫는거 하나죠?

$temp_result = mysql_query("select * from $bo_table where INSTR(LOWER(wr_subject),  LOWER('$g_sub')) > 0 and INSTR(LOWER(wr_1), LOWER('$g_sex')) > 0 and INSTR(LOWER(wr_2), LOWER('$g_area')) > 0 and INSTR(LOWER(wr_3), LOWER('$g_money')) > 0 order by wr_1 ") or die (mysql_error());

쓰신내용이랑 뭐가 다른지 확인해보세요..

그리고 마지막줄에 있는 $pages 에서 설마 ./?doc=main.php  <- 요걸 그대로 쓰는건 아니겠죠..?  이건 main.php 에서 작업했던예제를 적은겁니다..경로를 바꿔줘야겠죠..맞도록..
또한 게시판이라면 당연히 $bo_table 값도 페이징에 넘겨줘야 합니다..
아 참, 위에서 $city 와 $hakwon 변수가 wr_1, wr_2 와 같은 검색 옵션값이 되겠죠..
그리고 가츠님은 연락이 없으시네요.  메세지가 왔었길래 왜 왔었는지 궁금해서 연락달라고 조~기 아래 댓글달았는데..보시면 무슨 일인지 메신저 날려주세요.
제가 잠깐보기에는 그냥 4단배열 검색을 원하시는것 같은데요..부동산처럼 서울 선택하면 해당하는 지역이 하단박스에 뿌려지는게 아니라...
아래는 제가 가츠님꺼 잠깐 봐드린건데요..예전에도 한 번 비슷한 질문에 답변글을 올렸었는데...ㅡㅡ;
해결방법은 2가지가 있습니다.
해당 게시판의 스킨을 따로 복사해서 그 스킨을 사용하는 게시판의 경우는 gblist.skin.php 에서 직접 페이징엔진을 만들어서(이 경우 직접 해당보드로 쿼리를 날리는건 물론이고 gblist.php 에서 하는 역할을 여기에서 하도록 해야합니다)
하는 방법이 있고, 아니면 좀 간단한 gblist.php 를 수정해서 사용하는 방법이 있습니다.
아래의 2단 박스검색 예제를 응용하셔서, gblist.php 에서 게시판의 특정 검색값이 넘오면 원래있는 쿼리문을 사용하지말고 아래처럼 만들어서 검색에 대한 쿼리문을 사용하되, 이 경우 gblist.skin.php 에 뿌려주는 게시글과 연동되게 쿼리를 만들어서 쓰면됩니다.  아래는 펑션을 사용하지않고 직접 쿼리를 날린경우이나 그냥 펑션을 사용해도 됩니다.

// 검색이면
if($city){
// 넘어온 테이블명 (아래의 INSTR 함수에서 검색필드를 아래형식처럼 and 문으로 쭉 적어주면됩니다.)
$bo_table = $cfg[write_table_prefix].$hakwon;
$temp_result = mysql_query("select * from $bo_table where INSTR(LOWER(wr_5), LOWER('$city')) > 0 order by wr_3 ") or die (mysql_error());
$bo_num    = mysql_num_rows($temp_result);

// 페이징 설정
$bo_sql = "select * from $bo_table where INSTR(LOWER(wr_5), LOWER('$city')) > 0 order by wr_3 ";
// 리스트 목록수
$pageLimit = 5;  (환경설정값에 있는 변수를 대입하면 되겠죠.)
$total_page  = ceil($bo_num / $pageLimit);
if(!$page) { $page = 1; }
$start_record = ($page - 1) * $pageLimit;
$bo_sql .= " limit $start_record, $pageLimit ";
$bo_result = mysql_query($bo_sql) or die (mysql_error());
$Sstr = "city=$city&hakwon=$hakwon";  <- 요건 $qstr 대체용 변수들입니다.  검색에 필요한..
$pages = get_paging($default[de_write_pages], $page, $total_page, "./?doc=main.php&$Sstr&page=");
}
활기찬 님의 질문과 동떨어진 대답 아닌가요?
활기찬 님도 위 정도의 실력은 되는거 같은데...
첫째 서울을 드롭 하면 둘째엔 서울시의 구만 선택하고 구가 선택되면 셋째에는 그 구의 동만 선택할 수 있도록 해 달라는 부탁인거 같습니다.
틀리면 제가 죄인입니다.
<form name=fsearch method=get action='<?="./"?>'>
    <input type=hidden name=doc value='<?=$doc?>'>
    <input type=hidden name=bo_table value='<?=$bo_table?>'>

<td width="33%">
      <select name=sselect class=select>
            <option value='wr_subject'>제목</option>
            <option value='wr_content'>내용</option>
            <option value='wr_1'>하호히</option>
            <option value='wr_subject|wr_content'>제목+내용</option>
            <option value='wr_num'>번호</option>
            <option value='wr_datetime'>날짜</option>
            <option value='wr_hit'>읽음</option>
        </select>
        <input type=text name=stext size=10 required itemname='검색어' value='<?=$stext?>' class=ib>
        <input type=image src='<?="$board_skin/search.gif"?>' border=0 alt='검색' align=absmiddle>
</td>
</form>


게시판에 스킨 gblist.skin.php 부분에 이쪽부분 수정하시면 되죠
전체 9,564
그누3질답 내용 검색

회원로그인

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