Copy
$sql_img = " select wr_id, 'sub01_03' as table_no from g5_write_sub01_03 where wr_1='y' union all select wr_id, 'sub01_02' as table_no from g5_write_sub01_02 where wr_1='y' "; $result = sql_query($sql_img); $cnt = 0; while($row = sql_fetch_array($result)){ $row_id[$cnt] = $row['wr_id']; $table_no[$cnt] = $row['table_no']; $cnt++; }
제가봤을때는 이유없이 약 10개의 결과가 나와야합니다..
phpmyadmin에서 쿼리치면 제대로 나오는데.. 어디가 이상한건지 while문돌리면 안나오네요?
제눈에는 잘못된곳이 전혀 안모입니다 ㅠㅠㅠㅠ흑
답변 12개 / 댓글 9개
채택된 답변
+20 포인트
union all에서 구분하기 위해서 가상으로 값 부여하는 걸 깜빡했네요.
sql_query, sql_fetch_array 이 함수 말고 mysql_query, mysql_fetch_array 함수로 바꿔서 하시면 아마 나올 거 같네요.
그누보드에서 union all을 막았던 걸로 기억합니다.
ㅎㅎ sql_query 펑션에 // union의 사용을 허락하지 않습니다. 라고 써있네요
저도 이제야 함수 확인 했네요.
sql_query 함수에 union 구문을 막아 놨네요. 좋은 거 하나 배워 갑니다.
쿼리상에 문제가 없다면 이리 해보세요.
Copy
$sql_img = " select wr_id, 'sub01_03' as table_no from g5_write_sub01_03 where wr_1='y' union all select wr_id, 'sub01_02' as table_no from g5_write_sub01_02 where wr_1='y' "; $result = mysql_query($sql_img); $cnt=0;while($row = mysql_fetch_array($result,MYSQL_ASSOC)) { $row_id[$cnt] = $row['wr_id'];$table_no[$cnt] = $row['table_no'];$cnt++; }
while문 위에 mysql_num_row($result) 찍어서 몇줄이 들어가 있는지 함 보시겠어요.
위 소스로는 결과 보여주는 부분이 없는데 혹시 어떻게 보여주는지요?
답변은 아니지만
'sub01_03' -> sub01_03
'sub01_02' -> sub01_02
일단 이건 이렇게 수정해야 할거 같아요
답변을 작성하려면 로그인이 필요합니다.
