공지사항 최신날짜 순으로 출력 코드 좀 봐주세요.
본문
https://sir.kr/qa/267013
onlymilk47님 답글인데요.
아래처럼 하면 최신날짜순으로 공지가 나오는데요.
이미지처럼 공지를 지정한 숫자 만큼 상단에 열람중이 표시가 됩니다.
아래의 코드중 뭘 고치면 열람중 표시가 사라질까요?
$arr_notice = explode(',', trim($board['bo_notice']));
/*******************************
$arr_notice 자료를 재정리합니다
********************************/
$arr_noitce_array=array();
$arr_notice_cnt = count($arr_notice);
if($arr_notice_cnt)
{
for($i=0;$i<$arr_notice_cnt;$i++){
$arr_notice_array[]=" wr_id='".$arr_notice[$i]."' ";
}
$arr_notice_sql= implode(" OR ", $arr_notice_array );
$sql2 = "select wr_id from {$write_table} where ( {$arr_notice_sql} ) order by wr_last desc";
$result2=sql_query($sql2);
$i=0;
while($row2=sql_fetch_array($result2)){
$arr_notice[$i]=$row2[wr_id];
$i++;
}
}
//==================================
if (!$stx) {
$from_notice_idx = ($page - 1) * $page_rows;
답변 5
이렇게 한번 해 보세요.
가능한지 잘 모르겠지만...
질문글에 올료진 팁이나 질문으로 받은 소스를 제거후
$row = sql_fetch(" select * from {$write_table} where wr_id = '{$arr_notice[$k]}' ");
위에 소스를 찾아서 아래 소스로 변경해 보세요.
$row = sql_fetch(" select * from {$write_table} where wr_id = '{$arr_notice[$k]}' order by wr_datatime desc");
실질적으로 열람중 을 출력하는건 list.skin.php같은데요... 해당게시판스킨의 list.skin.php를 보고 열람중 출력 조건을 빼고나서 공지사항이 제글을 출력하는지 확인해봐야할거같습니다
$arr_notice_sql= implode(" OR ", $arr_notice_array );
or를 and로 한번 바꿔서 확인해 보세요..
$sql2 = "select wr_id from {$write_table} where ( {$arr_notice_sql} ) order by wr_datatime desc";
이렇게 한번 해 보세요.
@조민 님 댓글 여러번 감사합니다^^
$i를 $j로 모두 바꾸니 되네요~
$arr_noitce_array=array();
$arr_notice_cnt = count($arr_notice);
if($arr_notice_cnt)
{
for($j=0;$j<$arr_notice_cnt;$j++){
$arr_notice_array[]=" wr_id='".$arr_notice[$j]."' ";
}
$arr_notice_sql= implode(" OR ", $arr_notice_array );
$sql2 = "select wr_id from {$write_table} where ( {$arr_notice_sql} ) order by wr_datetime desc";
$result2=sql_query($sql2);
$j=0;
while($row2=sql_fetch_array($result2)){
$arr_notice[$j]=$row2[wr_id];
$j++;
}
}
다른분들 참고하세요~^^