변수충돌인가...

변수충돌인가...

QA

변수충돌인가...

본문

메뉴설정 active 시키니까 

영카트 메뉴설정 게시판 주소 링크하니까  

?mnum=2  이런식으로 변수값이 생기는데 

보드만 못찾는다고 나옴 

localhost/gb_shop/bbs/board.php?bo_table=blog_01?mnum=2

 

"존재 하지 않는 게시판"이라 이라고 주소를 못찾네요 

일반 php주소는 잘들어감 

 

어떻게 고쳐야 할까요 ?

변수를 지우자니 active 안먹구 

에러 뜰때마다 막막하네요 ~!

 


<?php
     if(!$mnum) $mnum = 0;
         $active = $i==$mnum? ' active' : '';
     if($i !=0 && $i !=10 && $i !=11) 
           echo "<li class='dropdown{$active}'>".PHP_EOL;
     else 
           echo "<li class='$active'>".PHP_EOL;
?>
                        <a href="<?php echo $row['me_link']; ?>?mnum=<?=$i?>" target="_<?php echo $row['me_target']; ?>" class="">
                        <?php echo $row['me_name'] ?>
                        <i class="fa fa-angle-down"></i>
                        </a>
</li>

이 질문에 댓글 쓰기 :

답변 2

제가 사용하는 방법입니다.


                if($bo_table) {
                    if(strpos($row2['me_link'], 'bo_table='.$bo_table) !== false) {
                        $active = ' active';
                    }
                } else if(strpos($row2['me_link'], $_SERVER['PHP_SELF']) !== false) {
                        $active = ' active';
                }

답변 감사합니다.
근데 이걸 어느부분에 넣어야 움직이나요?
php 초보인 제게는 추상적입니다.
 
제가 만드는 부분은 부트스트랩 메뉴 부분이라서 
<li class= dropdown active ><a herf>메뉴</a></li>
모바일에선 .dropdown 이 
데탑메뉴에서 .active는  칼라 변경 부분이라서...

감사합니다.

이렇게 고쳤네요~! 링크는 잘 넘어가는데 성공적입니다.
문제가 class 부분 active 부분이 안 먹네요~!
메뉴글자색이 바뀌어야 되는데 <li class='dropdown active'> 명령주면 메뉴전체가 색이 바뀌네요~!
클릭한 메뉴만 바뀌어야 하는데 ... $num=<?i?> 이값이 active class 를 보이게 했던 부분인데....
뭘 또 틀렸나 ? 

기본구조는 이렇구요
<ul class="nav navbar-nav navbar-right">
  <li class="dropdown active">
        <a href="#">menu</a><i class="fa fa-angle-down"></i>
      <ul role="menu" class="sub-menu">
            <li><a href="#">submenu</a></li>
      </ul>
  </li>
</ul>

[code]
<?php
                        if($bo_table) {

                            if(strpos($row2['me_link'], 'bo_table='.$bo_table) !== false) {

                            $active = ' active';

                            }

                        } else if(strpos($row2['me_link'], $_SERVER['PHP_SELF']) !== false) {

                        $active = ' active';
                        }

                        if($i !=0 && $i !=5 && $i !=6)
                          echo "<li class='dropdown{$active}'>".PHP_EOL;
                        else
                          echo "<li class='active'>".PHP_EOL;
                     
                    ?>
[/cod]

님이 원본 소스를 변형해서 그런것 같은데,
메뉴 부분 전체 소스를 올려보세요.
그리고 원하는 것을 구체적으로 올려주셔야 합니다.
서브 메뉴의 글자색 변경인가요??
질문을 새로 올리시면 답변할께요..^^

localhost/gb_shop/bbs/board.php?bo_table=blog_01&mnum=2

빨간색 부분이 수정되야함.

그런데 mnum 변수는 왜 넘기는거죠??

$row['me_code'] 를 활용해보세요..

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

회원로그인

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