메뉴 출력시 php 문법 질문

메뉴 출력시 php 문법 질문

QA

메뉴 출력시 php 문법 질문

답변 1

본문

안녕하세요 sir 회원님들

다름이 아니라 php를 아예 모르는 상태에서 메뉴 출력작업을 수정하다보니 

방법을 모르겠어서 이렇게 질문을 남깁니다.



<div class="sub_ul_container cf">
    <?php
				// 1단계 분류 판매 가능한 것만
				$hsql = " select ca_id, ca_name from {$g5['g5_shop_category_table']} where length(ca_id) = '2' and ca_use = '1' order by ca_order, ca_id ";
				$hresult = sql_query($hsql);
				$gnb_zindex = 999; // gnb_1dli z-index 값 설정용
				
				for ($i=0; $row=sql_fetch_array($hresult); $i++)
				{
				// 2단계 분류 판매 가능한 것만
				/* 2단계 분류를 사용하지 않아 주석처리 */
				?>
        <h3 class="menu_h3">
            <?php echo $row['ca_name']; ?>
        </h3>
        <?php
				$sql2 = " select ca_id, ca_name from {$g5['g5_shop_category_table']} where LENGTH(ca_id) = '4' and SUBSTRING(ca_id,1,2) = '{$row['ca_id']}' and ca_use = '1' order by ca_order, ca_id ";
				$result2 = sql_query($sql2);
				$count = sql_num_rows($result2);
				
                for ($k=0; $row2=sql_fetch_array($result2); $k++) {
                    if($k == 0)
						
                        echo '<ul class="sub_menu">'.PHP_EOL;
                ?>
            <li>
                <a href="<?php echo G5_SHOP_URL.'/list.php?ca_id='.$row2['ca_id']; ?>">
                    <?php echo $row2['ca_name'] ?>
                </a>
            </li>
            <?php
                }

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

원본 소스는 이러하고 


적용시 코드는 



<div class="sub_ul_container cf">
    <h3 class="menu_h3">A</h3>
    <ul class="sub_menu">
        ...
    </ul>
    <h3 class="menu_h3">B</h3>
    <ul class="sub_menu">
        ...
    </ul>
    <h3 class="menu_h3">C</h3>
    <ul class="sub_menu">
        ...
    </ul>
</div>

이렇게 출력됩니다.


다만 원하는 결과는 클래스 menu_h3가

ul 클래스인 sub_menu 바로 아래 자식요소의 첫번째로 출력되기를 바랍니다


echo부분을 수정해야하는데 태그를 연달아쓰니 제대로 출력이 안되고 php에러를 일으키던데 혹시 어떻게해야할까요?


이 질문에 댓글 쓰기 :

답변 1

확인해 볼 수 없지만 이렇게 하시면 되는거 아닌가 싶습니다만 

 
<div class="sub_ul_container cf">
    <?php
        // 1단계 분류 판매 가능한 것만
        $hsql = " select ca_id, ca_name from {$g5['g5_shop_category_table']} where length(ca_id) = '2' and ca_use = '1' order by ca_order, ca_id ";
        $hresult = sql_query($hsql);
        $gnb_zindex = 999; // gnb_1dli z-index 값 설정용

        for ($i=0; $row=sql_fetch_array($hresult); $i++) {
        // 2단계 분류 판매 가능한 것만
        /* 2단계 분류를 사용하지 않아 주석처리 */
            $sql2 = " select ca_id, ca_name from {$g5['g5_shop_category_table']} where LENGTH(ca_id) = '4' and SUBSTRING(ca_id,1,2) = '{$row['ca_id']}' and ca_use = '1' order by ca_order, ca_id ";
            $result2 = sql_query($sql2);
            $count = sql_num_rows($result2);

            for ($k=0; $row2=sql_fetch_array($result2); $k++) {
                if($k == 0)
                    echo '<ul class="sub_menu">'.PHP_EOL.'
                         <h3 class="menu_h3">'.$row['ca_name'].'</h3>'.PHP_EOL.'
                         <li>'.PHP_EOL.'
                         <a href="'.G5_SHOP_URL.'/list.php?ca_id='.$row2['ca_id'].'">'.$row2['ca_name'].'</a>'.PHP_EOL.'
                         </li>'.PHP_EOL;
            }

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

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 129,119
© SIRSOFT
현재 페이지 제일 처음으로