게시물 정렬기능 추가하기(그누보드x)
본문
사용중인 사이트 관리자 코드인데 셀렉트 박스를 추가하여 등록일순, 등록일역순, 노출순, 비노출순으로 필드를 재정렬 하고싶습니다. 기본적으로는 등록일 순으로 정렬이 되고 있구요.
DB상 recyn 이라는 컬럼에 Y,N값으로 노출/비노출이 설정되어있는데 어떤식으로 수정을 해야 셀렉트박스 선택만으로 정렬을 바꿀 수 있을까요?
<div class="sub_content_title"><?=$gstrAdminBoardTitle?></div>
<?
$Where = " WHERE spcmseq <> '1'";
IF($STXT)
{
$Where .= " AND name LIKE '%".add_str($STXT)."%' OR title LIKE '%".add_str($STXT)."%' OR content LIKE '%".add_str($STXT)."%' ";
}
IF($S1)
{
$Where .= " AND spcmseq = '".$S1."'";
}
$intTotal = 0;
$ResultTotal = sql_query("SELECT COUNT(*) as CNT FROM ex_hornbeam ".$Where,$connect);
IF($RowTotal=sql_fetch_array($ResultTotal))
{
$intTotal = $RowTotal["CNT"];
}
sql_free_result($ResultTotal);
IF($LIMIT){
$num_per_page = $LIMIT;
} ELSE {
$LIMIT = $num_per_page;
}
$retVal = "?KD=".$KD."&RD=2";
?>
<div class="general_body">
<div class="general_totalcnt">총 등록글 : <?=NUMBER_FORMAT($intTotal);?></div>
<div class="general_search">
<form method="GET" name="Sregfm" action="<?=$PHP_SELF?>">
<input type="hidden" name="KD" value="<?=$KD?>">
<input type="hidden" name="S1" value="<?=$S1?>">
(제목,내용이 검색됩니다) <input type="text" name="STXT" value="<?=$STXT?>" class="input01"> <input type="submit" value="검색">
<input type="button" value="엑셀다운로드" OnClick="listexcelsend('Sregfm','<?=$gstrAdminBoardFolder?>/listexcel.php');" style="float:right;">
<select name="limit" style="float:right;margin-right:10px;" onchange="listCountChange(this.value);">
<option value="10" <?IF($LIMIT == '10') ECHO 'selected="selected"';?>>10개씩보기</option>
<option value="20" <?IF($LIMIT == '20') ECHO 'selected="selected"';?>>20개씩보기</option>
<option value="30" <?IF($LIMIT == '30') ECHO 'selected="selected"';?>>30개씩보기</option>
<option value="50" <?IF($LIMIT == '50') ECHO 'selected="selected"';?>>50개씩보기</option>
</select>
</form>
</div>
<table class="general_guide">
<tr>
<th class="td1">번호</th>
<th class="td1">노출</th>
<th class="td4">구분</th>
<th class="td4">지역</th>
<th class="td4">대표이미지</th>
<th class="td8">제목</th>
<th class="td8">태그</th>
<th class="td4">등록일</th>
<!--<th class="td4">조회수</th>-->
<th class="td4">실행</th>
</tr>
<?
IF($intTotal > 0)
{
$total_page = ceil(($intTotal)/$num_per_page); //토탈페이지
$start_page = $num_per_page*($page-1); //시작페이지
$Query = "SELECT ehseq,cpseq,sbseq,repimg,title,name,left(reg_date,10) as reg_date,icount,spcmseq,recyn,tags FROM ex_hornbeam ".$Where." ORDER BY spcmseq, ehseq DESC LIMIT $start_page,$num_per_page";
$Result = sql_query($Query,$connect);
$bunho=($intTotal)-(($page-1) * $num_per_page); //리스트의 넘버수
WHILE($Row=sql_fetch_array($Result))
{
unset($RowLink);
$seq = $Row["ehseq"];
$cpseq = $Row["cpseq"];
$sbseq = $Row["sbseq"];
$repimg = EXPLODE("^",$Row["repimg"]);
$title = strip_str($Row["title"]);
$name = strip_str($Row["name"]);
$reg_date = $Row["reg_date"];
$icount = $Row["icount"];
$spcmseq = $Row["spcmseq"];
$recyn = $Row["recyn"];
$tags = str_replace("</span><span>"," ", $Row["tags"]);
IF($ifile) { $ifileVal = "<a href='/inc/download.php?F=".$gstrFileBoardUrl."&val=".$ifile."'>[첨부파일]</a>"; }
$RowLink = $PHP_SELF."?KD=".$KD."&RD=2&SD=".$SD."&SE=".$seq."&page=".$page."&STXT=".$STXT."&limit=".$LIMIT;
?>
<tr>
<td><a href="<?=$RowLink?>"><?=$bunho?></a></td>
<td>
<?=fn_general_select($recyn,"", ARRAY('Y^노출','N^비노출') ,"선택",$seq."_recyn","","ehseq=".$seq);?>
</td>
<td><a href="<?=$RowLink?>"><?=fn_general_txt($spcmseq,fn_cate_master_new(1,1,$connect));?></a></td>
<td><a href="<?=$RowLink?>"><?=fn_general_txt($sbseq,fn_cate_master("2",$connect));?></a></td>
<td><a href="<?=$RowLink?>"><?=fn_rep_img_list($gstrFileHornBeamUrl,$repimg[0],"listimg");?></a></td>
<td class="tdL"><a href="<?=$RowLink?>"><?=$strNbsp?><?=$strIcon?><?=$name?></a></td>
<td class="tdL"><input type="text" class="input_tags" value="<?=$tags?>" name="<?=$seq?>_tags"></td>
<td><a href="<?=$RowLink?>"><?=$reg_date;?></a></td>
<!--<td><a href="<?=$RowLink?>"><?=NUMBER_FORMAT($icount);?></a></td>-->
<td>
<input type="button" value="수정" OnClick="listModify('<?=$seq?>');">
</td>
</tr>
<?
$bunho--;
}
} ELSE {
ECHO "<tr><td colspan='7' class='tdblank'>등록된 ".$gstrAdminBoardTitle."이 없습니다.</td></tr>";
}
$retVal = $PHP_SELF."?KD=".$KD."&RD=3&SD=".$SD;
?>
</table>
<div class="pagelist1">
<?
$retValOr = "&KD=".$KD."&RD=".$RD."&SD=".$SD."&STXT=".$STXT."&limit=".$LIMIT;
$excelWriteUrl = $PHP_SELF."?KD=".$KD."&RD=33&SD=".$SD;
IF($intTotal> 0)
{
ECHO pagging_list__($page,$total_page,$page_per_list,$retValOr,"");
}
?>
</div>
<div class="general_btn_write">
<input type="button" value="엑셀로등록" OnClick="window.location='<?=$excelWriteUrl?>';">
<input type="button" value="글등록하기" OnClick="window.location='<?=$retVal?>';">
</td>
</div>
<script type="text/javascript">
<!--
//엑셀 다운로드
function listexcelsend(obj,target)
{
var fm = document.getElementsByName(obj)[0];
fm.action = target;
fm.submit();
}
//리스트의 노출 및 태그 수정
function listModify(seq)
{
if(seq != ''){
var dataval = {
'kind' : 'listUpdate',
'seq' : seq,
'recyn' : $("select[name='"+seq +"_recyn'] option:selected").val(),
'tags' : $("input[name='"+seq + "_tags']").val()
};
$.ajax({
url : "/adm/hornbeam_new/process.php",
type : "POST",
data : dataval,
dataType : "html",
error:function(xhr, status, error) {
alert(xhr+'---'+status+'--'+error);
alert("통신중 장애가 발생하였습니다 다시 시도하여주십시오");
},
success: function(data) {
if(data == 'OK')
{
alert('수정 되었습니다.');
} else {
alert(data);
}
}
});
} else {
alert('잘못된 번호 입니다');
}
}
//리스트 보기 갯수 수정
function listCountChange(val){
location.href = "<?=$PHP_SELF.'?KD='.$KD.'&RD='.$RD.'&S1='.$S1.'&SD='.$SD.'&STXT='.$STXT.'&limit='?>" + val;
}
-->
</script>
!-->
답변 1
정렬 할수 있는 셀렉트박스를 만들고
recyn desc
recyn asc
reg_date desc
reg_date asc
이런식으로 파라메타를 주신후에 order by 에 적용하시면 될꺼 같습니다.
답변을 작성하시기 전에 로그인 해주세요.