리스트 게시판에서 검색 기능 추가하는데 몇일째 애를 먹고 있습니다.ㅜㅜ
본문
<script>
function link(){
var wr_9_value = $('input:radio[name=wr_9]:checked').val();
var wr_10_value = $('input:radio[name=wr_10]:checked').val();
var wr_7_value = $('input:radio[name=wr_7]:checked').val();
if(wr_9_value == undefined){
var wr_9_value="";
alert('조건1 미충족'); // JavaScript 변수 값 확인
exit(0);
}
if(wr_10_value == undefined){
var wr_10_value="";
alert('조건2 미충족'); // JavaScript 변수 값 확인\
exit(0);
}
if(wr_7_value == undefined){
var wr_7_value="";
alert('조건3 미충족'); // JavaScript 변수 값 확인
exit(0);
}
// URL에 JavaScript 변수 값을 적용하여 이동
window.location.href = "<?php echo G5_BBS_URL; ?>/board.php?bo_table=tl_land&sca=<?php echo $sca ?>&sop=and&sfl=wr_9=" + encodeURIComponent(wr_9_value) + "&sop=and&sfl=wr_10=" + encodeURIComponent(wr_10_value) + "&sop=and&sfl=wr_7=" + encodeURIComponent(wr_7_value);
}
</script>
질문 게시판을 통해 위와 같이 코드를 수정하고 있습니다.
문제는 총3가지 있습니다.
1. 위에서 exit(0); 이 함수가 오류가 납니다.
F12로 확인해보면 Uncaught ReferenceError: exit is not defined
이렇게 나오네요.
오류가 나와서 종료가 되는데 정상적으로 되는게 아니라서 원인을 모르겠습니다.
2. window.location.href = "<?php echo G5_BBS_URL; ?>/board.php?bo_table=tl_land&sca=<?php echo $sca ?>&sop=and&sfl=wr_9=" + encodeURIComponent(wr_9_value) + "&sop=and&sfl=wr_10=" + encodeURIComponent(wr_10_value) + "&sop=and&sfl=wr_7=" + encodeURIComponent(wr_7_value);
이 부분으로 검색기능을 좀 응용해서 검색 화면 나타내려고 했는데 조건 2개가 더 붙으니까 검색이 잘안되는듯 합니다.
search 코드에 값을 넣고 해야 하는데 기본 기능은 안건드리고 수정하고 싶어서 위와 같이 했습니다.
&query=SELECT * FROM `g5_write_tl_land` WHERE wr_9='조건1' and wr_10='조건2' and wr_7='조건3';
sql_query(&query);
이렇게 직접 넣는것도 생각 중인데 위의 결과 쿼리를 게시판 리스트 내용에 나오게 하려면 sql_query를 어떻게 마지막에 넣어야 하는지 모르겠습니다.
3. 게시판 카테고리 부분을 input 타입 형태로 변경하고 있습니다.
특정 게시판만 카테고리 부분을 input 타입 형태로 변경하려고 하는데 bbs/list.php 부분 변경안하고
할 수 있는 방안은 없을까요?
<label class="box-radio-input" style="width:100%;">
<input type="radio" name="wr_7" value="조건3">
<span class="qa1 f13">
조건3
</span>
</label>
이렇게 나타내고 있는데 카테고리 부분도 이렇게 변경했으면 해서요.
질문이 많네요. ㅜㅜㅜ
답변 3
1. 위에서 exit(0); 이 함수가 오류가 납니다.
F12로 확인해보면 Uncaught ReferenceError: exit is not defined
이렇게 나오네요.
오류가 나와서 종료가 되는데 정상적으로 되는게 아니라서 원인을 모르겠습니다.
답 : 우선 exit(0); 의 역활이 궁금하며 F12로 네트워크쪽에 선언한 .js 파일이 있는지 확인필요
2. window.location.href = "<?php echo G5_BBS_URL; ?>/board.php?bo_table=tl_land&sca=<?php echo $sca ?>&sop=and&sfl=wr_9=" + encodeURIComponent(wr_9_value) + "&sop=and&sfl=wr_10=" + encodeURIComponent(wr_10_value) + "&sop=and&sfl=wr_7=" + encodeURIComponent(wr_7_value);
이 부분으로 검색기능을 좀 응용해서 검색 화면 나타내려고 했는데 조건 2개가 더 붙으니까 검색이 잘안되는듯 합니다.
search 코드에 값을 넣고 해야 하는데 기본 기능은 안건드리고 수정하고 싶어서 위와 같이 했습니다.
&query=SELECT * FROM `g5_write_tl_land` WHERE wr_9='조건1' and wr_10='조건2' and wr_7='조건3';
sql_query(&query);
이렇게 직접 넣는것도 생각 중인데 위의 결과 쿼리를 게시판 리스트 내용에 나오게 하려면 sql_query를 어떻게 마지막에 넣어야 하는지 모르겠습니다.
답 : "&sop=and&sfl=wr_10=", "&sop=and&sfl=wr_7=" 는 저런식이 아닌...묶어서 보내야 합니다. 또는 변수명을 바꾸시던지요... "&sop=and&sfl=wr_10=", "&sop2=and&sfl2=wr_7="
3. 게시판 카테고리 부분을 input 타입 형태로 변경하고 있습니다.
특정 게시판만 카테고리 부분을 input 타입 형태로 변경하려고 하는데 bbs/list.php 부분 변경안하고
할 수 있는 방안은 없을까요?
<label class="box-radio-input" style="width:100%;">
<input type="radio" name="wr_7" value="조건3">
<span class="qa1 f13">
조건3
</span>
</label>
이렇게 나타내고 있는데 카테고리 부분도 이렇게 변경했으면 해서요.
답 : 같은 형식으로 진행 하셔도 무방합니다.
단, 기존 소스를 지우지 마시고 주석 후 진행하세요
일단
exit(0); 이부분을 return false; 로 바꾸신후 테스트 해보세요.
2번 문의드린 사항은 방안이 없을까요?
sql 조회해서 목록 화면에 나타내면 되는데 search 부분이나 검색하는 부분 여분필드 값 넣어서 하는 부분이 어려워서 막혀 있습니다.
$bo_table = 'tl_land';
$write_table = "g5_write_{$bo_table}";
$sql = " select * from $write_table";
$result = sql_query($sql);
while ($row = sql_fetch_array($result))
{
echo $row['wr_subject'];
}
를 돌리면 실행 하나요? 혹시 echo $sql; 을 찍어서 직접 쿼리를 날려보셨는지요?
$write_table = "g5_write_{$bo_table}";는 저보다는
$write_table = "g5_write_".$bo_table; 로 하시는게 나으실거고요..
$sql = " select * from $write_table";는
$sql = " select * from {$write_table}";
이러게 진행 해보세요.
문의 하셨었던 2번
2. window.location.href = "<?php echo G5_BBS_URL; ?>/board.php?bo_table=tl_land&sca=<?php echo $sca ?>&sop=and&sfl=wr_9=" + encodeURIComponent(wr_9_value) + "&sop=and&sfl=wr_10=" + encodeURIComponent(wr_10_value) + "&sop=and&sfl=wr_7=" + encodeURIComponent(wr_7_value);
이 부분으로 검색기능을 좀 응용해서 검색 화면 나타내려고 했는데 조건 2개가 더 붙으니까 검색이 잘안되는듯 합니다.
search 코드에 값을 넣고 해야 하는데 기본 기능은 안건드리고 수정하고 싶어서 위와 같이 했습니다.
&query=SELECT * FROM `g5_write_tl_land` WHERE wr_9='조건1' and wr_10='조건2' and wr_7='조건3';
sql_query(&query);
이렇게 직접 넣는것도 생각 중인데 위의 결과 쿼리를 게시판 리스트 내용에 나오게 하려면 sql_query를 어떻게 마지막에 넣어야 하는지 모르겠습니다.
은
window.location.href = "<?php echo G5_BBS_URL; ?>/board.php?bo_table=tl_land&sca=<?php echo $sca ?>&sop=and&sfl=wr_9=" + encodeURIComponent(wr_9_value) + "&sop2=and&sfl2=wr_10=" + encodeURIComponent(wr_10_value) + "&sop3=and&sfl3=wr_7=" + encodeURIComponent(wr_7_value);
로 처리 해서 넘기시고...
받아주는(쿼리가 돌아야 하는 페이지) 곳 에서는
$sopQuery = "";
if(!empty($sop2) && !empty($sfl2)){
$sopQuery = "AND `".$sop2."` = '.$sfl2.'";
}
$sopQuery2 = "";
if(!empty($sop3) && !empty($sfl3)){
$sopQuery2 = "AND `".$sop3."` = '.$sfl3.'";
}
$bo_table = 'tl_land';
$write_table = "g5_write_".$bo_table;
$sql = " select * from {$write_table} WHERE (1) {$sopQuery} {$sopQuery2}";
$result = sql_query($sql);
while ($row = sql_fetch_array($result))
{
echo $row['wr_subject'];
}
방식으로 처리 하시고 확인해보시기 바랍니다.