테스트 사이트 - 개발 중인 베타 버전입니다

공지사항 최신날짜 순으로 출력 코드 좀 봐주세요. 채택완료

열공중 6년 전 조회 4,109

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개

채택된 답변
+20 포인트
6년 전

https://sir.kr/main/member/?mb_id=bodr" target="_blank">@열공중

 

이렇게 한번 해 보세요.

가능한지 잘 모르겠지만...

질문글에 올료진 팁이나 질문으로 받은 소스를  제거후 

 

$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");

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

열공중
6년 전
해봤는데 안되어요;;
참고로 그렇게하면 공지가 풀려버려요;;

댓글을 작성하려면 로그인이 필요합니다.

@조민 님 댓글 여러번 감사합니다^^

$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++;     } }

 

다른분들 참고하세요~^^

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

6년 전

@열공중

$sql2 = "select wr_id from {$write_table} where ( {$arr_notice_sql} ) order by wr_datatime desc";

이렇게 한번 해 보세요.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

열공중
6년 전
조민님 wr_last를 wr_datatime 바꾸어야 최신 날짜로 제데로 잘나와요^^
열람중은 그대로에요ㅠㅠ

댓글을 작성하려면 로그인이 필요합니다.

6년 전

$arr_notice_sql= implode(" OR ",  $arr_notice_array );

or를 and로  한번  바꿔서 확인해 보세요..

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

열공중
6년 전
조민님 댓글 감사합니다.
바꾸면 기본처럼 그냥 글쓴 순서로 출력이됩니다.
최신 날짜 순으로 출력이 안되요.

댓글을 작성하려면 로그인이 필요합니다.

아르키어드

실질적으로 열람중 을 출력하는건 list.skin.php같은데요... 해당게시판스킨의 list.skin.php를 보고 열람중 출력 조건을 빼고나서 공지사항이 제글을 출력하는지 확인해봐야할거같습니다

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

열공중
6년 전
아르키어드님 답글 감사합니다.
list.skin.php 스킨하고는 관계가 없네요.
스킨에서 열람중 부분을 모두 지워도 똑 같고요.
또 저 코드를 넣지 않으면 최신 날짜 순으로 출력은 안되지만 정상작동합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인