그누보드5 입니다.
Copy
$j_sql = "select * from board limit 1, 5";
$result = sql_query($j_sql);
$j_row = sql_fetch_array($result);
if($j_row) { // 조회결과가 있을때 보여주기
for ($j=0; $j < $list_cnt; $j++) {
$wr_id = $j_row[$j]['wr_id'];
$wr_subject = $j_row[$j]['wr_subject'];
echo $wr_subject."<br>";
}
for 문 돌리면 5개 행이 나와야 하는데 왜 안나올까요?
$wr_subject 값이 안찍히네요....ㅠㅠ
|
답변 3개 / 댓글 4개
채택된 답변
+20 포인트
2년 전
Copy
$j_sql = "select * from board limit 1, 5";
$result = sql_query($j_sql);
for ($j=0; $j_row=sql_fetch_array($result); $j++) {
$wr_id = $j_row['wr_id'];
$wr_subject = $j_row['wr_subject'];
echo $wr_subject."<br>";
}
답변에 대한 댓글 3개
강력드라이브
2년 전
2년 전
$result = sql_query($j_sql);
$j_row = sql_fetch_array($result);
여기에서 그누보드의 sql_fetch_array 함수는 mysqli_fetch_assoc() 함수로
결과값 $result에서 한행을 얻는 겁니다.
때문에 위와 같이 하게 되면, $result 에 5개의 결과 값이 담겨 있다고 하더라도,
$j_row에는 한행(첫번째 행)의 결과만 담기게 됩니다.
만약 sql_query 로 가져온 $result의 전체 갯수를 알고 싶다면
$count = $result->num_rows 하면 됩니다.
$j_row = sql_fetch_array($result);
여기에서 그누보드의 sql_fetch_array 함수는 mysqli_fetch_assoc() 함수로
결과값 $result에서 한행을 얻는 겁니다.
때문에 위와 같이 하게 되면, $result 에 5개의 결과 값이 담겨 있다고 하더라도,
$j_row에는 한행(첫번째 행)의 결과만 담기게 됩니다.
만약 sql_query 로 가져온 $result의 전체 갯수를 알고 싶다면
$count = $result->num_rows 하면 됩니다.
강력드라이브
2년 전
아 네...
sql_fetch_array
이 함수의 사용이 잘 못 된것인가요?
그리고 $wr_subject = $j_row[$j]['wr_subject']; 이렇게 2중 배열로 사용하는건 틀린 표현이네요?
다른 페이지에서는 이렇게 사용을 했었거든요..
질문이 많아 죄송합니다.ㅠㅠ
sql_fetch_array
이 함수의 사용이 잘 못 된것인가요?
그리고 $wr_subject = $j_row[$j]['wr_subject']; 이렇게 2중 배열로 사용하는건 틀린 표현이네요?
다른 페이지에서는 이렇게 사용을 했었거든요..
질문이 많아 죄송합니다.ㅠㅠ
2년 전
Copy
<?php
$j_sql = "select * from board limit 1, 5";
$result = sql_query($j_sql);
$j_row = sql_fetch_array($result);
if ($j_row) { // 조회결과가 있을 때 보여주기
$list_cnt = 5; // 예시로 5로 설정
for ($j = 0; $j < $list_cnt; $j++) {
$wr_id = $j_row[$j]['wr_id'];
$wr_subject = $j_row[$j]['wr_subject'];
echo $wr_subject."<br>";
}
}
?>
답변에 대한 댓글 1개
답변을 작성하려면 로그인이 필요합니다.
1. $wr_id = $j_row['wr_id'];
2. $wr_id = $j_row[$j]['wr_id'];
변수를 잘못쓴거네요..
그런데 1번, 2번 차이가 뭔지요?