foreach로 메뉴명들을 뽑고있는데..
예를들면...
Copy
$sql = select * from category where depth=1; //1뎁스인애들불러오기while($res = db_fetch_array($sql)) {$depth1[] =$res;}foreach ($depth1 as $key =>$val) {echo $val['name']; //1뎁스명애들 출력됨. 그다음 이어서 2뎁스애들을 불러와야하는데 여기서 어떻게해야할지를 모르겠습니다..}
db category 테이블에서 1뎁스의 idx 값을 가지고 2뎁스를 찾아 불러와야하는데
$depth2 = select * from category where depth=2 and parent=$depth1['idx'];
while로는 할 수있겠는데 foreach로는 도저히 머리가 돌아가지 않네요...
제발 알려주세요ㅜㅜ
|
답변 3개 / 댓글 2개
채택된 답변
+20 포인트
8년 전
$sql = "select * from category where depth=2";
while($res = db_fetch_array($sql)) $depth2[$row['parent']][] = $res;
$sql = "select * from category where depth=1";
while($res = db_fetch_array($sql))
foreach ($depth2[$res['idx']] as $v) echo $v;
답변에 대한 댓글 1개
8년 전
@아기새
네, 반복문의 기능은
사용법만다르고
개념적으로 동일합니다.
루프 안에서 중첩루프 문을 만들어서 처리하는 개념을 알고 계시면
같은 패턴으로 사용하시면되요
8년 전
거의다 하신거 같은데요
Copy
$depth2 = "select * from category where depth=2 and parent=$val['idx']"; // 변수를 맞는걸로 사용하시면되요
답변에 대한 댓글 1개
8년 전
댓글 감사합니다ㅜㅜ 이거때문에 잠을못잤어요...
그럼 foreach안에서 또 foreach를 하면될런지... 모르겠어요..
그럼 foreach안에서 또 foreach를 하면될런지... 모르겠어요..
답변을 작성하려면 로그인이 필요합니다.