뽑아낸 데이터를 어떻게 하면 랜덤하게 출력할수 있을까요?

$sql = " select *
from {$cfg[write_table_prefix]}{$bo_table}
where wr_comment = 0 and ca_id=$ca_id
order by wr_id desc limit 0, $rows ";

위쿼리로 최근글을 $rows 갯수 만큼(만약 $rows=5 일경우) 뽑아서
예를 들어, 5 4 3 2 1이런식으로요

그리과 나서 $sql 변수에 들어간 5 4 3 2 1 값을 랜덤하게 뿌려주면 될것 같은데...
rand($sql) 이런식으로 할수 도 없고... 다른 방법이 있을듯 싶은데..
저의 무지로는 언뜻 생각이 나지 않네요.

번뜩이는 아이디어로 해결책 좀 찾아주세요 ^^
|

댓글 5개

아주 좋은 생각이네요.. ^^
그런데, 적용해 보니까 글 리스트가 랜덤하게 나오기는 하는데 중복된 데이터가 나오기도 하네요

srand((double)microtime()*1000000); //추가
<? for ($j=0; $j<count($list); $j++) { ?> // 변수 $i를 $j로 변경하시구요.
$i= rand(1, 5); // 추가

즉, 위 구문에서 count($list)만큼 반복이 되는데 ..
rand(1,5)이기 때문에 만약, 3이 나오면 3이 출력되고 다시 돌아서 5가 나오면 5가 출력되고 다시 돌아서...
또 다시 3이 나올수 있다는 겁니다. ㅡㅜ 그러면 중복된 글이 최신글에 나오게 되네요.. 중복되면 안되는데...

쉬울줄 알았는데.. 이거 좀처럼 쉽게 풀리지 않네요.. 도와주세용~~
컥~

언제나 초보지요.ㅋ

광고 멘트가 생각나네요.

"전문가에게도 전문가가 필요합니다."

전문가가 되려고 노력하겠지만 설사 전문가가 된다하더라도 이곳은 찾아와야 하겠죠.^^

즐거운 주말되세요.
오운현님은 컴터학원을 운영하시고 계신다네요...
실력 대단하시겟네요...
해결되셧나요?저두 한수 배우고 갑니다..
gblist.skin.php 또는 latest.skin.php에서....

srand((double)microtime()*1000000); //추가
<? for ($i=0; $i<count($list); $i++) { ?> // 변수 $i를 $j로 변경하시구요.
$i= rand(1, 5); // 추가
:
:

요렇게 한번 해보시죠.

해피한 밤 되세요.
댓글을 작성하시려면 로그인이 필요합니다. 로그인

그누3질답

+
제목 글쓴이 날짜 조회
20년 전 조회 940
20년 전 조회 961
20년 전 조회 1,148
20년 전 조회 1,064
20년 전 조회 778
20년 전 조회 957
20년 전 조회 869
20년 전 조회 860
20년 전 조회 922
20년 전 조회 869
20년 전 조회 839
20년 전 조회 1,570
20년 전 조회 786
20년 전 조회 643
20년 전 조회 1,010
20년 전 조회 816
20년 전 조회 1,165
20년 전 조회 1,016
20년 전 조회 823
20년 전 조회 1,669
🐛 버그신고