장뽕뽕
웹게임 강화해서 광물캐기, 커뮤니티
hoowave.dothome.co.kr
개인 사이트에서 사용해 본 것을 토대로 작성하는 게시글입니다..
게시판 밑에 제목, 내용, 작성자 별로 게시글을 검색하는 기능을 추가해 봤습니다.
html
<div class="row justify-content-center">
<div class="d-flex">
<div class="input-group">
<button class="btn btn-outline-dark dropdown-toggle" href="javascript:void(0);" id="messagesDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<span id="footer-search-val" search="content">제목 + 내용</span>
</button>
<ul class="dropdown-menu">
<li><a class="dropdown-item footer-search" href="javascript:void(0);" id="content">제목 + 내용</a></li>
<li><a class="dropdown-item footer-search" href="javascript:void(0);" id="writer">글작성자</a></li>
</ul>
<input class="form-control me-2 search-word" type="text" placeholder="검색어를 입력해주세요.">
<a class="btn btn-outline-success search" href="javascript:void(0);">
검색
</a>
</div>
</div>
</div>
js
$('.footer-search').click(function() {
var text = $(this).text();
var val = $(this).attr('id');
$('#footer-search-val').text(text);
$('#footer-search-val').attr('search', val);
});
$('.search').click(function() {
var order = $('#header-order-val').attr('order');
var search = $('#footer-search-val').attr('search');
var word = $('.search-word').val();
if (word == "") {
alert("검색어를 입력해주세요.");
return false;
}
$('#board_load').loading('start');
$('#board_load').fadeOut(100, function() {
$('#board_load').load('../menu/view_load.html?type=<?=$type?>&page=<?=$page?>&name=<?=$name?>&order=' + order + '&search=' + search + '&word=' + word,
function() {
$('#board_load').fadeIn(100, function() {
$('#board_load').loading('stop');
});
});
});
});
php
$search = $_GET['search'];
$word = $_GET['word'];
switch($search){
case 'content':
$s_cond = "and (content like '%$word%' or title like '%$word%')";
break;
case 'writer':
$s_cond = "and write_user like '%$word%'";
break;
}
if(!$word)
{
$s_cond = "";
}
$first = ($page*$board_page_num)-$board_page_num;
$sql = "select * from $table where 1=1 and menu='$type' $n_cond";
$board_total_num = $db_cls->execute($sql,'num');
$sql .= "order by $order limit $first,$board_page_num";
$board_result = $db_cls->execute($sql);
$board_total = $db_cls->execute($sql,'num');
검색 타입과 검색어를 받아와서
s_cond(like 조건절)을 만들어서 추가해 줍니다.
해당 게시판에서 제목 또는 내용을 '고양이'라는 단어로 검색했을 때
해당 게시판에서 글 작성자를 '관리자'로 검색했을 때
'Legacy > JS+PHP+SQL' 카테고리의 다른 글
게시글에 댓글, 답글 기능 추가 (0) | 2025.02.21 |
---|---|
회원별 작성 게시글 불러오기 (0) | 2025.02.21 |
게시글 최신순, 조회 순으로 정렬하기 (0) | 2025.02.21 |
ckeditor로 유튜브 링크 삽입하고 불러오기 (0) | 2025.02.20 |
레벨순으로 랭킹 정하기 (0) | 2025.02.20 |