검색관련 질문드립니다.
관련링크
본문
안녕하세요. 게시판에서 여분필드로 값으로만 검색을 하는 기능을 추가하고 싶은데
제가 초보라 눈에 보이는 형식으로만 수정을했는데 검색기능이 조금 이상해서 질문드립니다.
예)
게시글작성할때 wr_1에 엄마 wr_2에 아빠라고 적고 게시글 등록한다음 검색하기위해
wr_1 의 검색input에 엄마 wr_2의 검색input에 아빠라고 적었는데
wr_1과 wr_2가 같은 값을 검색해서 출해주는게 아니라 wr_2랑 같은 내용만 검색이 됩니다.ㅠㅠ
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
include_once(G5_LIB_PATH.'/thumbnail.lib.php');
// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
add_stylesheet('<link rel="stylesheet" href="'.$board_skin_url.'/style.css">', 0);
?>
<script>
// $(document).ready(function(){
// $("#sear_btn").click(function(){
// $("#bo_gall").fadeIn();
// });
// });
</script>
<!-- 게시판 목록 시작 { -->
<?php if ($is_admin || $stx) { ?>
<style>
.cate_wrap{display: block;}
.cate_img{display: block;}
</style>
<?php if(!$is_admin){?>
<style>
.gall_li {margin:0 auto !important; float:none !important;}
</style>
<?php } ?>
<div id="bo_gall" style="width:1200px; margin:50px auto 100px;">
<h2 id="container_title"><?php echo $board['bo_subject'] ?><span class="sound_only"> 목록</span></h2>
<?php if ($is_category) { ?>
<nav id="bo_cate">
<h2><?php echo $board['bo_subject'] ?> 카테고리</h2>
<ul id="bo_cate_ul">
<?php echo $category_option ?>
</ul>
</nav>
<?php } ?>
<div class="bo_fx">
<!-- <div id="bo_list_total">
<span>Total <?/*php echo number_format($total_count) */?>건</span>
<?/*php echo $page */?> 페이지
</div> -->
<?php if ($rss_href || $write_href) { ?>
<ul class="btn_bo_user">
<?php if ($rss_href) { ?><li><a href="<?php echo $rss_href ?>" class="btn_b01">RSS</a></li><?php } ?>
<?php if ($admin_href) { ?><li><a href="<?php echo $admin_href ?>" class="btn_admin">관리자</a></li><?php } ?>
<?php if ($write_href) { ?><li><a href="<?php echo $write_href ?>" class="btn_b02">글쓰기</a></li><?php } ?>
</ul>
<?php } ?>
</div>
<form name="fboardlist" id="fboardlist" action="./board_list_update.php" onsubmit="return fboardlist_submit(this);" method="post">
<input type="hidden" name="bo_table" value="<?php echo $bo_table ?>">
<input type="hidden" name="sfl" value="<?php echo $sfl ?>">
<input type="hidden" name="stx" value="<?php echo $stx ?>">
<input type="hidden" name="spt" value="<?php echo $spt ?>">
<input type="hidden" name="sst" value="<?php echo $sst ?>">
<input type="hidden" name="sod" value="<?php echo $sod ?>">
<input type="hidden" name="page" value="<?php echo $page ?>">
<input type="hidden" name="sw" value="">
<?php if ($is_checkbox) { ?>
<div id="gall_allchk">
<label for="chkall" class="sound_only">현재 페이지 게시물 전체</label>
<input type="checkbox" id="chkall" onclick="if (this.checked) all_checked(true); else all_checked(false);">
</div>
<?php } ?>
<ul id="gall_ul">
<?php for ($i=0; $i<count($list); $i++) {
if($i>0 && ($i % $bo_gallery_cols == 0))
$style = 'clear:both;';
else
$style = '';
if ($i == 0) $k = 0;
$k += 1;
if ($k % $bo_gallery_cols == 0) $style .= "margin:0 !important;";
?>
<li class="gall_li <?php if ($wr_id == $list[$i]['wr_id']) { ?>gall_now<?php } ?>" style="<?php echo $style ?>width:<?php echo $board['bo_gallery_width'] ?>px">
<?php if ($is_checkbox) { ?>
<label for="chk_wr_id_<?php echo $i ?>" class="sound_only"><?php echo $list[$i]['subject'] ?></label>
<input type="checkbox" name="chk_wr_id[]" value="<?php echo $list[$i]['wr_id'] ?>" id="chk_wr_id_<?php echo $i ?>">
<?php } ?>
<span class="sound_only">
<?php
if ($wr_id == $list[$i]['wr_id'])
echo "<span class=\"bo_current\">열람중</span>";
else
echo $list[$i]['num'];
?>
</span>
<ul class="gall_con">
<li class="gall_href">
<a href="<?php echo $list[$i]['href'] ?>">
<?php
if ($list[$i]['is_notice']) { // 공지사항 ?>
<strong style="width:<?php echo $board['bo_gallery_width'] ?>px;height:<?php echo $board['bo_gallery_height'] ?>px">공지</strong>
<?php } else {
$thumb = get_list_thumbnail($board['bo_table'], $list[$i]['wr_id'], $board['bo_gallery_width'], $board['bo_gallery_height']);
if($thumb['src']) {
$img_content = '<img src="'.$thumb['src'].'" alt="'.$thumb['alt'].'" width="'.$board['bo_gallery_width'].'" height="'.$board['bo_gallery_height'].'">';
} else {
$img_content = '<span style="width:'.$board['bo_gallery_width'].'px;height:'.$board['bo_gallery_height'].'px">no image</span>';
}
echo $img_content;
}
?>
</a>
</li>
<li class="gall_text_href" style="width:<?php echo $board['bo_gallery_width'] ?>px">
<?php
// echo $list[$i]['icon_reply']; 갤러리는 reply 를 사용 안 할 것 같습니다. - 지운아빠 2013-03-04
if ($is_category && $list[$i]['ca_name']) {
?>
<!-- <a href="<?php echo $list[$i]['ca_name_href'] ?>" class="bo_cate_link"><?php echo $list[$i]['ca_name'] ?></a> -->
<?php } ?>
<a href="<?php echo $list[$i]['href'] ?>">
<?php echo $list[$i]['subject'] ?>
<?php if ($list[$i]['comment_cnt']) { ?><span class="sound_only">댓글</span><?php echo $list[$i]['comment_cnt']; ?><span class="sound_only">개</span><?php } ?>
</a>
<?php
// if ($list[$i]['link']['count']) { echo '['.$list[$i]['link']['count']}.']'; }
// if ($list[$i]['file']['count']) { echo '<'.$list[$i]['file']['count'].'>'; }
if (isset($list[$i]['icon_new'])) echo $list[$i]['icon_new'];
if (isset($list[$i]['icon_hot'])) echo $list[$i]['icon_hot'];
//if (isset($list[$i]['icon_file'])) echo $list[$i]['icon_file'];
//if (isset($list[$i]['icon_link'])) echo $list[$i]['icon_link'];
//if (isset($list[$i]['icon_secret'])) echo $list[$i]['icon_secret'];
?>
</li>
<li><span class="gall_subject">작성자 </span><?php echo $list[$i]['name'] ?></li>
<li><span class="gall_subject">작성일 </span><?php echo $list[$i]['datetime2'] ?></li>
<li><span class="gall_subject">조회 </span><?php echo $list[$i]['wr_hit'] ?></li>
<?php if ($is_good) { ?><li><span class="gall_subject">추천</span><strong><?php echo $list[$i]['wr_good'] ?></strong></li><?php } ?>
<?php if ($is_nogood) { ?><li><span class="gall_subject">비추천</span><strong><?php echo $list[$i]['wr_nogood'] ?></strong></li><?php } ?>
</ul>
</li>
<?php } ?>
<?php if (count($list) == 0) { echo "<li class=\"empty_list\">게시물이 없습니다.</li>"; } ?>
</ul>
<?php if ($list_href || $is_checkbox || $write_href) { ?>
<div class="bo_fx">
<?php if ($is_checkbox) { ?>
<ul class="btn_bo_adm">
<li><input type="submit" name="btn_submit" value="선택삭제" onclick="document.pressed=this.value"></li>
<li><input type="submit" name="btn_submit" value="선택복사" onclick="document.pressed=this.value"></li>
<li><input type="submit" name="btn_submit" value="선택이동" onclick="document.pressed=this.value"></li>
</ul>
<?php } ?>
<?php if ($list_href || $write_href) { ?>
<ul class="btn_bo_user">
<?php if ($list_href) { ?><li><a href="<?php echo $list_href ?>" class="btn_b01">목록</a></li><?php } ?>
<?php if ($write_href) { ?><li><a href="<?php echo $write_href ?>" class="btn_b02">글쓰기</a></li><?php } ?>
</ul>
<?php } ?>
</div>
<?php } ?>
<!-- 게시물 검색 시작 { -->
<!-- } 게시물 검색 끝 -->
</form>
<!-- 페이지 -->
<?php echo $write_pages; ?>
</div>
<? } else {?>
<style>
.cate_wrap{display: none!important;}
.cate_img{display: none !important;}
</style>
<? } ?>
<?php if (!$is_admin && !$stx ) { ?>
<style>
.search_box{width:100%; background:url('/image/sub/board/baby_bg.png') no-repeat center; height:1080px; box-sizing: border-box; padding:310px 0;}
.search_box .sch_box{width:1200px; margin:0 auto;}
.search_box .sch_box .md_input{text-align: right; width:382px; height:52px; }
.search_box .sch_box .mom_input{background:url('/image/sub/board/baby_input_bg1.png') no-repeat; margin-bottom:17px;}
.search_box .sch_box .dad_input{background:url('/image/sub/board/baby_input_bg2.png') no-repeat; }
.search_box .sch_box .frm_input{background:none !important; border:0; width:330px; padding-left:20px; height:52px; box-sizing: border-box; font-size:18px; font-family:'Noto Sans KR'; letter-spacing:-1px;}
.search_box .sch_box input::-webkit-input-placeholder { color: #c1c0c0; }
.search_box .sch_box input:-ms-input-placeholder { color: #c1c0c0; }
.search_box .sch_box input::-moz-placeholder { color: #c1c0c0; }
.sch_input_area{margin-top:30px; overflow: hidden;}
.md_input_area{float:left; overflow: hidden; margin-right:17px;}
.sch_input_area .sch_submit{position:relative; overflow: hidden;}
.sch_input_area #sear_btn{width:121px; height:121px;}
.sch_input_area .sch_submit #sch_sub_lab{position:absolute; top:37px; left:25px; color:#fff; font-size: 21px;}
.sch_input_area .sch_submit #sch_sub_lab span{font-weight:bold;}
</style>
<div class="search_box">
<div class="sch_box">
<div class="sch_img">
<img src="/image/sub/board/baby_img1.png" alt="">
</div>
<fieldset id="sch_box" >
<legend>게시물 검색</legend>
<form name="fsearch" method="get">
<input type="hidden" name="bo_table" value="<?php echo $bo_table ?>">
<input type="hidden" name="sca" value="<?php echo $sca ?>">
<input type="hidden" name="sop" value="and">
<label for="sfl" class="sound_only">검색대상</label>
<div class="sch_input_area">
<div class="md_input_area">
<div class="mom_input md_input">
<label for="stx" class="sound_only">검색어<strong class="sound_only"> 필수</strong></label>
<input type="text" name="stx" value="<?php echo stripslashes($wr_1) ?>" required id="stx" class=" frm_input required" size="15" maxlength="255" placeholder="엄마이름">
</div>
<div class="dad_input md_input">
<label for="stx" class="sound_only">검색어<strong class="sound_only"> 필수</strong></label>
<input type="text" name="stx" value="<?php echo stripslashes($wr_2) ?>" required id="stx" class="frm_input required" size="15" maxlength="255" placeholder="아빠이름">
</div>
</div>
<div class="sch_submit">
<input type="submit" value="" class="btn_submit" id="sear_btn">
<label for="sear_btn" id="sch_sub_lab"><span>우리아기</span><br>사진찾기</label>
</div>
</div>
</form>
</fieldset>
</div>
</div>
<?} else {?>
<fieldset id="bo_sch">
<legend>게시물 검색</legend>
<form name="fsearch" method="get">
<input type="hidden" name="bo_table" value="<?php echo $bo_table ?>">
<input type="hidden" name="sca" value="<?php echo $sca ?>">
<input type="hidden" name="sop" value="and">
<label for="sfl" class="sound_only">검색대상</label>
<label for="stx" class="sound_only">검색어<strong class="sound_only"> 필수</strong></label>
<input type="text" name="stx" value="<?php echo stripslashes($wr_1) ?>" required id="stx" class=" frm_input required" size="15" maxlength="255" placeholder="엄마이름">
<label for="stx" class="sound_only">검색어<strong class="sound_only"> 필수</strong></label>
<input type="text" name="stx" value="<?php echo stripslashes($wr_2) ?>" required id="stx" class="frm_input required" size="15" maxlength="255" placeholder="아빠이름">
<input type="submit" value="검색" class="btn_submit">
</div>
</form>
</fieldset>
<?}?>
<?php if($is_checkbox) { ?>
<noscript>
<p>자바스크립트를 사용하지 않는 경우<br>별도의 확인 절차 없이 바로 선택삭제 처리하므로 주의하시기 바랍니다.</p>
</noscript>
<?php } ?>
<?php if ($is_checkbox) { ?>
<script>
$(function() {
$('form[name=fsearch]').on('submit', function() {
var f = document.forms['fsearch'];
f.stx.value = f.wr_1.value + ' ' + f.wr_2.value;
});
});
function all_checked(sw) {
var f = document.fboardlist;
for (var i=0; i<f.length; i++) {
if (f.elements[i].name == "chk_wr_id[]")
f.elements[i].checked = sw;
}
}
function fboardlist_submit(f) {
var chk_count = 0;
for (var i=0; i<f.length; i++) {
if (f.elements[i].name == "chk_wr_id[]" && f.elements[i].checked)
chk_count++;
}
if (!chk_count) {
alert(document.pressed + "할 게시물을 하나 이상 선택하세요.");
return false;
}
if(document.pressed == "선택복사") {
select_copy("copy");
return;
}
if(document.pressed == "선택이동") {
select_copy("move");
return;
}
if(document.pressed == "선택삭제") {
if (!confirm("선택한 게시물을 정말 삭제하시겠습니까?\n\n한번 삭제한 자료는 복구할 수 없습니다\n\n답변글이 있는 게시글을 선택하신 경우\n답변글도 선택하셔야 게시글이 삭제됩니다."))
return false;
f.removeAttribute("target");
f.action = "./board_list_update.php";
}
return true;
}
// 선택한 게시물 복사 및 이동
function select_copy(sw) {
var f = document.fboardlist;
if (sw == 'copy')
str = "복사";
else
str = "이동";
var sub_win = window.open("", "move", "left=50, top=50, width=500, height=550, scrollbars=1");
f.sw.value = sw;
f.target = "move";
f.action = "./move.php";
f.submit();
}
</script>
<?php } ?>
<!-- } 게시판 목록 끝 -->
조금 길더라도 제가 수정한 게시판스킨 list파일 입니다...
어떻게 해야 두값이 모두 동일한 값만 검색결과로 나올수 있을까요?? ㅠㅠ....
그리고 혹시 검색한 결과값이 있으면 list페이지가 아니라 바로 view페이지로 볼수 있는 방법이 있을까요??
제가 사용한 게시판은 그누보드 5.2.9.8.3 기본 갤러리 게시판을 수정했습니다.
제가 글재주가 없어서 제가 작업중인 사이트 주소를 링크하였습니다.
선배님들 한수부탁드리겠습니다.
!-->
답변 2
wr_1 값과 wr_2 의 값이 모두 동일한 결과 값을 얻을려면 스킨 파일 수정만으로는 원하는 결과를 얻으 실수 없습니다. bbs. list 파일을 수정 하셔야 할겁니다.
답변을 작성하시기 전에 로그인 해주세요.