sql 결과를 배열로 불러오기 질문입니다 채택완료
</p>
<p>$sql = "select mb_id from g5_member order by rand() limit 100";
$result = sql_query($sql);
$m_result = sql_fetch_array($result);</p>
<p>
$rand_member = id1,id2,id3,id4.... 이런식으로 전체회원중 100개의 아이디를 랜덤으로 불러오려고 하는데 위 처럼 하면 랜덤으로 불러와지긴 하는데 한개만 불러와집니다.
어떤 부분이 잘못됐는지 궁금합니다.
답변 4개
질문의 의도가 모호합니다.
100개의 아이디를 랜덤으로 가져오고 싶으시면
볼피드님의 답변을 이용해서
$list 안에 담겨있는 100개의 ID를 활용하시면되고
100개중에서 1개만 원하시면
처음것으로 이용하면되는데
function getRandMember() {
$sql = "select mb_id from g5_member order by rand() limit 100";
$row = sql_fetch($sql);
return $row[0];
}
이렇게 할경우
$randmember = getRadnMember();
하면 매번 다른 ID를 가져오겠죠
질문에서
이렇게 사용하는것이나 100개를 가져와서 사용하는것이나
랜덤ID를 사용하려년 용도가 누락된것같습니다.
댓글을 작성하려면 로그인이 필요합니다.
</p>
<p>$sql = "select mb_id from g5_member order by rand() limit 100";
$result = sql_query($sql); </p>
<p>while ($row = sql_fetch_array($result)) {
$rand_member .= $row['mb_id'] . ',';
}</p>
<p>$rand_member = rtrim($rand_member, ',');
echo $rand_member;</p>
<p>
댓글을 작성하려면 로그인이 필요합니다.
select group_concat( mb_id separator ',') from g5_member order by rand() limit 100
query를 이렇게 바꿔 보세요.
댓글을 작성하려면 로그인이 필요합니다.
</p>
<p>$list = array();</p>
<pre>
<code>$sql = "select mb_id from g5_member order by rand() limit 100";
$result = sql_query($sql);
for($i=0;$row=sql_fetch_array($result);$i++){
$list[] = $row;
}</code></pre>
<p><code>print_r($list);</code></p>
<p>
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인