foreach 질문입니다..

foreach 질문입니다..

QA

foreach 질문입니다..

본문


    $lets_array = array("0601"=>"헬로우","0603"=>"모바일","0401"=>"트러스트","0602"=>"악세사리","0402"=>"패치");
    $lets_where = "/bbs/board.php"; 
<div class="lets__common__btns">
        <ul class="lets__common__ul">
        <?php
           foreach($lets_array as $href => $lets_value) {
               $lets_active = "";
               if ($active_title == strip_tags($lets_value) ){
                       $lets_active = "content__active";
               }
               if ($href == "0401" || $href == "0402" ){
               $lets_where = "/bbs/write.php"; 
               }
         ?>
            <li class="lets__common__li <?php echo $lets_active;?>">
                <a href="<?php echo $lets_where;?><?php echo $parameter;?>=<?php echo $href?>" class="lets__common__click bold"><?php echo $lets_value?></a>
            </li>
        <?php } ?>
        </ul>
    </div>
 

 

 

위와 같은 코드가 있습니다.

 

배열을 이용해 메뉴를 만들고 있는데요..

 

기본은 board.php 즉 리스트 페이지인데

 

0401, 0402 이 두놈만 write.php로 가야합니다..

 

그래서

 


  foreach($lets_array as $href => $lets_value) {
               $lets_active = "";
               if ($active_title == strip_tags($lets_value) ){
                       $lets_active = "content__active";
               }
               if ($href == "0401" || $href == "0402" ){
               $lets_where = "/bbs/write.php"; 
               }

 

이렇게 조건문을 걸었더니..........

0401 부터는 모두 write.php로 나오네요.. 제말이 이해가 되시나요????????

 

<a href="board.php?bo_table=0601">메뉴1</a>
<a href="board.php?bo_table=0602">메뉴1</a>
<a href="write.php?bo_table=0401">메뉴1</a>
<a href="board.php?bo_table=0603">메뉴1</a>
<a href="write.php?bo_table=0402">메뉴1</a>

 

이렇게 나오길 바랬는데

<a href="board.php?bo_table=0601">메뉴1</a>
<a href="board.php?bo_table=0602">메뉴1</a>
<a href="write.php?bo_table=0401">메뉴1</a>
<a href="write.php?bo_table=0603">메뉴1</a>
<a href="write.php?bo_table=0402">메뉴1</a>

 

이렇게 나옵니다...

 

어디를 손봐야할까요,,

 

제가 놓친게 무엇일까요..

 

이 질문에 댓글 쓰기 :

답변 1

$lets_where 변수에 계속 저장되어 돌아가기 때문입니다

 

$lets_where = "/bbs/write.php"; 가 한번 실행됨으로인해

 

$lets_where = "/bbs/write.php"; 가 다음 구문에서도 영향을 미쳐서

 

0603이라도 $lets_where의 변수값이 write.php로 선언이 되어버렸기때문에 입니다

 

foreach문에 초기화를 한번 넣어주세요 

 

$lets_where = "/bbs/board.php"; 를 반복구문 시작할때 선언하고 하면 되겠죠?

답변을 작성하시기 전에 로그인 해주세요.
전체 42
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT