for문 안에 for문 사용할 때 질문드립니다
본문
for ($j=0; $row=sql_fetch_array($result2); $j++) {
$drug_name2[]=$row['DRUG_NAME'];
$company_name2[]=$row['COMPANY_NAME'];
?>
<div style="display:inline-block;">
<h2><?php echo $company_name2[$j] ; ?></h2>
<h2><?php echo $drug_name2[$j] ; ?></h2>
<select id="select_box<?php echo $j ;?>">
<option>선택하세요</option>
</select>
</div>
<?php
for($i=0; $row=sql_fetch_array($result1); $i++){
$method_name[]=$row['METHOD_TO_ADMINISTER'];
$drug_name[]=$row['DRUG_NAME'];
if($drug_name2[$j] = $drug_name[$i]){
?>
<script>
$("#select_box").append("<option><?php echo $method_name[$i]?></option>")
</script>
<?php
}
}
}
제가 지금 for문을 두개 사용하여 쿼리값을 비교하고 같으면 select_box 안으로 넣으려고 하는데 for문안에 for문을 넣으니 두번 도는 것이 아니라 바깥 for문을 한번 진행하면서 안쪽 for문을 돌고 그 다음에는 바깥 for문만 돌고 안 쪽 for문은 돌지 않습니다!ㅠㅠ 어떤 것이 문제인지 알려주실 수 있나요? ㅜㅜ
+추가로 제가 지금 구현하고 싶은 화면이 약의 이름을 쿼리문으로 꺼내오는데 두번 쿼리문으로 꺼내옵니다. 한번은 GROUP BY 약품 으로 구성된 쿼리문이 result2이고 result1은 각 약품마다 투여방식이 다양한데 각 약품마다의 투여방식을 꺼내옵니다. 예를 들어 result2는 타이레놀, 감기약, 목감기약 이고 result1은 타이레놀 주사, 타이레놀 경구, 감기약 경구, 목감기약 주사, 목감기약 경구 이런식으로 작성이 됩니다.
그래서 저는 첫번째 result2에서 꺼내온 타이레놀을 두번째 for문으로 이동시켜 약품을 꺼내고 타이레놀이 맞다면 타이레놀의 투여방식 두개가 select의 option으로 들어가게 작성하고 싶습니다!!
고수님들 제발 도와주세요,,, 지금 일주일째 머리를 싸매고 하고 있는데 진전이 없어 부탁드립니다ㅠㅠ
!-->답변 2
<?php
안쪽 loop 돌기 전에
sql_data_seek( $result1, 0);
를 추가해 보세요.
for($i=0; $row=sql_fetch_array($result1); $i++){
안쪽 for 문과 바깥쪽 for 문의 $row 를 같이 쓰셔서 그렇습니다.
안쪽 for 문의 $row 를 다른이름으로 바꿔서 코드 고치시면 됩니다.
답변을 작성하시기 전에 로그인 해주세요.