게시판 분류를 이용하여 3단 메뉴를 구성하려는데....

게시판 분류를 이용하여 3단 메뉴를 구성하려는데....

QA

게시판 분류를 이용하여 3단 메뉴를 구성하려는데....

본문

분류를 추출하는 쿼리는 맞는것 같은데 게시판 분류가 출력되지 않습니다.

 

제가 잘못 이해를 하는건지 어디가 이상이 있는지 알려주시면 감사하겠습니다.

 

콧물 때문에 집중을 할 수 가 없네요....ㅠㅠ

 

도움 주시면 감사하겠습니다.

 


<?php
     <?php } ?>
      from {$g5['menu_table']}
      where me_use = '1'
        and length(me_code) = '4'
        and substring(me_code, 1, 2) = '{$row['me_code']}'
      order by me_order, me_id ";
    $result2 = sql_query($sql2);
    for ($k=0; $row2=sql_fetch_array($result2); $k++) {
    ?>
    <li class="child">
     <a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>" class="gnb_2da">
      <?php echo $row2['me_name'] ?>
     </a>
     <!-- 3단 메뉴 시작 -->
     <ul>
      <?php 
      $category = sql_fetch(" select bo_category_list from $g5[board_table] where bo_table = '$bo_table' ");
      $ca_menu = explode("|", $category[bo_category_list]); 
      for ($j=0; $j<count($ca_menu); $j++)  { 
      ?>
      <li>
       <a href="<?php echo $row2['me_link']; ?>&sca=<?=$ca_menu[$j]?>"><?php echo $ca_menu[$j]?></a>
      </li>
      <?php } ?>  
     </ul>
     <!-- 3단 메뉴 끝 -->
    </li>
     <?php } ?>​

 

 

이 질문에 댓글 쓰기 :

답변 9

메뉴설정시 g5_menu 테이블에 bo_table이 특정 필드에 저장되는 형태가 아니기 때문에

 

 

$tb_name = explode("=", $row2['me_link']); // 2차 메뉴 링크의 /bbs/board.php?bo_table=테이블명 이용 처리

$category = sql_fetch(" select bo_category_list from $g5[board_table] where bo_table = '{$tb_name[1]}' ");

 

흐름 테스트 해 보세요.

 

고맙습니다. 선생님! 어찌여기까지 ^^
그냥 될 줄 알았다가 아주 혼줄나고 있습니다!!
우선 몽땅 망가져서요. 기본값도 이제는 폭파 됨 ㅡㅡ
다운로드 하나 새로 받아서 붙이기 한 후, 적용해 보겠습니다!!

고맙습니다..

..........................

바로 적용처리 해보았습니다.

"사노라가노라" 님 말씀 주신대로..

..................................

<!-- 3단 메뉴 시작 -->
                <?php
$tb_name = explode("=", $row2['me_link']); // 2차 메뉴 링크의 /bbs/board.php?bo_table=테이블명 이용 처리
$category = sql_fetch(" select bo_category_list from $g5[board_table] where bo_table = '{$tb_name[1]}' ");
                $ca_menu = explode("|", $category[bo_category_list]);

                for ($j=0; $j<count($ca_menu); $j++)  { 
                ?>
                <li><a href="<?php echo $row2['me_link']; ?>&sca=<?=$ca_menu[$j]?>"><?php echo $ca_menu[$j]?></a></li>
                <?php } ?> 
                <!-- 3단 메뉴 끝 -->

.............................

서브출력부 끝나는 부분 바로 아래
붙여 넣고 확인을 하니..
모든 메뉴마다 노출이 되던.. 카테고리 메뉴가
해당 메뉴에서만 온전하게 작동했습니다.

GNB 메뉴 3차 카테고리 출력을 하시고자 하신다면
다른 어떤 것 보다 쉽게 적용하실 수 있습니다.

//////////////////////

제가 등록한 댓글 내용 중

<?php
                }

이런 형태는 정상입니다.
아까는 정신이 없어 뭐가 뭔지 싶은 상태에서 그만 실수입니다.

그러니까       $category = sql_fetch(" select bo_category_list from $g5[board_table] where bo_table = '$bo_table' ");

 

요기 소스에서요...

$bo_table 의 비교값이 없어서 해당 쿼리를 실행해도 레코드가 0가 나올거 같거든요

 

여기 뭔가 자게분위기 -ㅂ-;;

저 생뚱맞은 $bo_table 변수는 어디서 가지고 오는건가요?

메뉴테이블에 아무리 쳐다봐도 bo_table넣는곳은 없고

메뉴를 불러서 이놈이 어떤 $bo_table 을 가지고 있는지 반환 받을 방법이 없어 보입니다만.. -_-;;

 

주무세요 안자서 그래요

그거는 원래 이런식으로 불러올려고 한거예요...ㅠㅠ

<a href="<?php echo G5_BBS_URL?>/board.php?bo_table=<?php echo $category[bo_table]?>&sca=<?php echo $ca_menu[$j]?>"><?=$ca_menu[$j]?></a>

머리가 엉켜고 설켜서 하얗게 변해서 모르겠네요.

아.. 다시 생각해보니 가능은 할거 같네요 

me_link를 반환 받아서 ? 쪼개고 = 쪼개서 배열처리하고

keyr값으로 board 다음 인자를 가지고 와서

$bo_talbe에다가 넣어주시면 저 소스 굴러가겠네요

돼요! 출력은 정상으로 되세요.

선생님 하단쪽 코드도 올려 주세요.

 

<nav id="gnb">
    </nav>
        <ul id="gnb_1dul">
            <?php
            $sql = " select *
                        from {$g5['menu_table']}
                        where me_use = '1'
                          and length(me_code) = '2'
                        order by me_order, me_id ";
            $result = sql_query($sql, false);
            $gnb_zindex = 999; // gnb_1dli z-index 값 설정용

            for ($i=0; $row=sql_fetch_array($result); $i++) {
            ?>
            <li class="gnb_1dli" style="z-index:<?php echo $gnb_zindex--; ?>">
                <a href="<?php echo $row['me_link']; ?>" target="_<?php echo $row['me_target']; ?>" class="gnb_1da"><?php echo $row['me_name'] ?></a>
                <?php
                $sql2 = " select *
                            from {$g5['menu_table']}
                            where me_use = '1'
                              and length(me_code) = '4'
                              and substring(me_code, 1, 2) = '{$row['me_code']}'
                            order by me_order, me_id ";
                $result2 = sql_query($sql2);

                for ($k=0; $row2=sql_fetch_array($result2); $k++) {
                    if($k == 0)
                        echo '<ul class="gnb_2dul">'.PHP_EOL;
                ?>
                    <li class="gnb_2dli"><a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>" class="gnb_2da"><?php echo $row2['me_name'] ?></a></li>
           <!-- 3단 메뉴 시작 -->
           <li>
           <ul>
               <?php 
               $category = sql_fetch(" select bo_category_list from $g5[board_table] where bo_table = '$bo_table' ");
               $ca_menu = explode("|", $category[bo_category_list]); 
                  for ($j=0; $j<count($ca_menu); $j++)  { 
               ?>

                  <li> <a href="<?php echo $row3['me_link']; ?>&sca=<?=$ca_menu[$j]?>"><?php echo $ca_menu[$j]?></a> </li>
               <?php } ?>  
           </ul>
           <!-- 3단 메뉴 끝 -->
           </li>
    <?php
                }

                if($k > 0)
                    echo '</ul>'.PHP_EOL;
                ?>
            </li>
            <?php
            }

            if ($i == 0) {  ?>
                <li id="gnb_empty">메뉴 준비 중입니다.<?php if ($is_admin) { ?> <br><a href="<?php echo G5_ADMIN_URL; ?>/menu_list.php">관리자모드 > 환경설정 > 메뉴설정</a>에서 설정하실 수 있습니다.<?php } ?></li>
            <?php } ?>
        </ul>
    </nav>​

 

기본값에다 앉혀 보았습니다.

출력 정상출력 되세요..

 

된장.. 다 나오는데요. ^^ 정리가 필요하지 싶어요!!

...........................

이 코드 아닌데요?
아까 되었던 아이 아닙니다.

<?php
                }

이러고 나오면 말이 안 되는데요. ㅡㅡ
복사/붙이기 하면서 실수를 한 것 같아요.
죄송합니다. ㅜㅜ

7fb99416505afc897acdbc0e78201dd1_1433422643_8694.jpg 

 

아까 주신코드 앉혔을 때 이렇게 나왔거든요.

그래서 css 문제인가? 이러고는 전화통화 ^^

선생님 출력은 가져오는 것 맞아요!

그런데? 공지사항 쪽에다 뿌렸는데.. 왜 몽땅오지? 이거였습니다.

쿼리문 하나 불러와서 앉혀 볼까요?

row3 달아서 ㅎ

그러고 보니.. ?? Rido님 말씀처럼.. 뒤에 꼬집어 내오는 코드가 안 보입니다?

카테고리는 맞는데.. 어떤 보드인지 변수에 담겨 있지 않은 것 같아서요.

 

<a href="<?php echo G5_BBS_URL?>/board.php?bo_table=<?php echo $category[bo_table]?>&sca=<?php echo $ca_menu[$j]?>"><?=$ca_menu[$j]?></a>

 

이건 정상출력 안 하나요?

저도 앉혀 보겠습니다!

 

2시간이 지났네.. ㅡㅡ/ ㅎㅎㅎ

 

추가 : 2015.06.05 00:32

뭔짓을 해도 진척이 없습니다. 계속 제자리..

막강 검색기능 활용모드로.. 전향 ㅋ

 

추가 : 2015.06.05 01:11

http://sir.co.kr/qa/?wr_id=56946&s_tag=%EB%B6%84%EB%A5%98

이것도 실패 ^^.. 음.. 이제 슬슬.. 오기발동 ㅋ

일해야 하는디 ㅡㅡ.

7fb99416505afc897acdbc0e78201dd1_1433436780_4572.jpg 

 

제 고객 작업장 모습.. 상단메뉴가 몽땅 망가졌습니다.

형님 저 철수해요. ㅎㅎ

주무시고 오시고.. 저는 쉽게 생각하고 덤볐다가.. 작업하던 곳 메뉴만 박살났습니다!!

...................................

 

사노라가노라님 고맙습니다.

{$tb_name[1]} 이런 접근은 생각조차 못했습니다.

고맙습니다!

 

흠.. 오늘도 공부는 조금 했군.. ㅎㅎ 흡족!! 

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

회원로그인

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