코드 요약 부탁드립니다

코드 요약 부탁드립니다

QA

코드 요약 부탁드립니다

본문



<ul>
    <?php
    $listUrl = G5_SHOP_URL . '/list.php?ca_id=';
    //1차 카테고리 리스트들 가져오기
    $res = sql_query(" select ca_id, ca_name from {$g5['g5_shop_category_table']} where ca_use = '1' and ca_id like '__' order by ca_order, ca_id ");
    for ($i = 0; $r = sql_fetch_array($res); $i++) {
        ?>
    <li class="<?php echo strpos($r['ca_id'], $ca_id) === 0 ? 'open' : ''; ?>">
        <a href="<?php echo $listUrl . $r['ca_id']; ?>"><?php echo get_text($r['ca_name']); ?></a>
        <?php
        //2차 카테고리 리스트들 가져오기
        $res2 = sql_query(" select ca_id, ca_name from {$g5['g5_shop_category_table']} where ca_use = '1' and ca_id like '{$r['ca_id']}__' order by ca_order, ca_id ");

        for ($j = 0; $r2 = sql_fetch_array($res2); $j++) {
            if ($j == 0)
                echo '<ul class="">' . PHP_EOL;

            //하위카테고리 상품 수량
            $temp = sql_fetch("select count(*) as cnt from {$g5['g5_shop_item_table']} where ca_id like '{$r2['ca_id']}%' or ca_id2 like '{$r2['ca_id']}%' or ca_id3 like '{$r2['ca_id']}%' ");
            ?>
            <li>
                <a href="<?php echo $listUrl . $r2['ca_id']; ?>" class=""><?php echo get_text($r2['ca_name']); ?> <span class="c_num">(<?php echo (int)$temp['cnt'] ?>)</span></a>
            </li>
            <?php
        }
        if ($j > 0)
            echo '</ul>' . PHP_EOL;
        ?>
            <li class="<?php echo strpos($r2['ca_id'], $ca_id) === 0 ? 'open' : ''; ?>">
        <a href="<?php echo $listUrl . $r2['ca_id']; ?>"><?php echo get_text($r2['ca_name']); ?></a>
        <?php
        //3차 카테고리 리스트들 가져오기
        $res3 = sql_query(" select ca_id, ca_name from {$g5['g5_shop_category_table']} where ca_use = '1' and ca_id like '{$r2['ca_id']}__' order by ca_order, ca_id ");

        for ($k = 0; $r3 = sql_fetch_array($res3); $k++) {
            if ($k == 0)
                echo '<ul class="">' . PHP_EOL;

            //하위카테고리 상품 수량
            $temp = sql_fetch("select count(*) as cnt from {$g5['g5_shop_item_table']} where ca_id like '{$r3['ca_id']}%' or ca_id2 like '{$r3['ca_id']}%' or ca_id3 like '{$r2['ca_id']}%' ");
            ?>
            <li>
                <a href="<?php echo $listUrl . $r3['ca_id']; ?>" class=""><?php echo get_text($r3['ca_name']); ?> <span class="c_num">(<?php echo (int)$temp['cnt'] ?>)</span></a>
            </li>
            <?php
        }
        if ($k > 0)
            echo '</ul>' . PHP_EOL;
        ?>
        </li>
        <?php
    }
    ?>
</ul>

 

그냥 막 가지고 온거긴 한데 너무 스파게티라 알아볼수가 없네영

이 질문에 댓글 쓰기 :

답변 3

효율은 떨어지지만 반복의 반복을 통한 전체 카테고리명 및 등록 상품수 출력이니

요약거리가 없네요. 스파게티 소스도 아니고요.

이 정도는 본인이 정리하고 이해해야, 응용&활용하는데 도움이 되지 않을까요?

그냥 상품 카테고리 가져오기 같은데요? 1차부터 3차까진데 영카트 최신버전 코드도 참고해보세요

거기서는 깔끔하게 나왔어요 

질문이 추상적이네요.

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

회원로그인

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