채택완료

카테고리 2,3차 사용중인데요 2차 3차 배경색 다르게 할수없나요??

2018-01-25 (목) 20:33:55 2,752

카테고리 2,3차 사용중인데요 2차 3차 배경색 다르게 할수없나요??

종일 삽질했는데 잘 안되네요 ㅠ

/skin/shop/basic/listcategory.skin.php

Copy
<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

$str = '';
$ca_id_len = strlen($ca_id);

// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
add_stylesheet('<link rel="stylesheet" href="'.G5_SHOP_CSS_URL.'/style.css">', 0);

$ca_cnt = $ca_id_len / 2; // 루프횟수

for ($i=0;$i<$ca_cnt;$i++) {

    switch ($i) {
        case 3:
            $str_len = 8; // like '{$ca_id}%'
            $get_len = 10; // length(ca_id)
        break;
        case 2:
            $str_len = 6;
            $get_len = 8;
        break;
        case 1:
            $str_len = 4;
            $get_len = 6;
        break;
        case 0:
            $str_len = 2;
            $get_len = 4;
        break;
    }

    $str = substr($ca_id, 0, $str_len);

    echo getMsCategory($str, $get_len, $i, $ca_id);

}


function getMsCategory($ca_id_str, $len, $no, $ca_id) {
    global $g5;

    $sql = "
        select ca_id, ca_name from {$g5['g5_shop_category_table']}
        where ca_id like '{$ca_id_str}%' and length(ca_id) = {$len} and ca_use = '1'
        order by ca_order, ca_id ";

    $result = sql_query($sql);

       $str = '<div class="sct_ct_here">';

    while ($row=sql_fetch_array($result)) {
        if (preg_match("/^{$row['ca_id']}/", $ca_id))
            $sct_ct_here = 'sct_ct_here';
        else
            $sct_ct_here = '';
        $str .= '<li><a href="./list.php?ca_id='.$row['ca_id'].'"class="'.$sct_ct_here.'">'.$row['ca_name'].'</a></li>';
       
        if ($str) $exists = true;
        else $exists = false;
    }
   
     $str .= '<ul style="background:#F0F7FF"></ul>';   // BG 2차 카테고리 색깔지정 OK
  
    $str .= '</div>';

    if ($exists) return $str;
    else return false;
}
?>
|

답변 2개 / 댓글 2개

채택된 답변
+20 포인트
Copy
if($len == 4){

...

}elseif($len == 6){

...

}

이렇게 하면 될것 같은데요.

답변에 대한 댓글 1개

2018-01-25 (목) 21:32:47
감사합니다!!
덕분해 바로 해결되었습니다.!!
Copy
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8" />
    <style type="text/css">
    ul.gnb { background-color: #efefef; }
    ul.gnb ul { background-color: #eaeaea; }
    ul.gnb ul ul { background-color: #e6e6e6; }
    </style>
</head>
<body>
    <ul class="gnb">
        <li>1
            <ul>
                <li>1-1
                    <ul>
                        <li>1-1-1</li>
                        <li>1-1-2</li>
                        <li>1-1-3</li>
                    </ul>
                </li>
                <li>1-2</li>
                <li>1-3</li>
            </ul>
        </li>
        <li>2</li>
        <li>3</li>
    </ul>
</body>
</html>

답변에 대한 댓글 1개

2018-01-25 (목) 21:33:08
답변 감사합니다~!!

답변을 작성하려면 로그인이 필요합니다.