영카트 조건문 질문 드립니다.

영카트 조건문 질문 드립니다.

QA

영카트 조건문 질문 드립니다.

본문

같은 분류 1차 2차 3차 일 때는 배경색으로 메뉴에 오버상태를 주려는데요.

1차는 불이 들어와있는데 2.3 차로 가면 꺼지네요..

 

2차 3차든 1차의 코드를 인식해라... 라는 조건과..문자열 인식이 안되고 있는것 같은데요..

조언좀 부탁드려요

 

어떻게 수정을 해줘야 될까요.

 


<?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_id ";
        $hresult = sql_query($hsql);
        $snb_zindex = 999; // snb_1dli z-index 값 설정용
        for ($i=0; $row=sql_fetch_array($hresult); $i++)
        {
            $snb_zindex -= 1; // html 구조에서 앞선 snb_1dli 에 더 높은 z-index 값 부여
	    // 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_id ";
            $result2 = sql_query($sql2);
            $count = mysql_num_rows($result2);
 
			$code = $row[ca_id];
			$code = substr($code, 0, 2);
 
        ?> 
 
 
<? if($ca_id == $code) { ?>
					<a href="<?php echo G5_SHOP_URL.'/list.php?ca_id='.$row['ca_id']; ?>" style="background:#e3001b;" class="snb_1da<?php if ($count) echo ' snb_1dam'; ?>"><?php echo $row['ca_name']; ?></a>
				<? } else { ?>
					<a href="<?php echo G5_SHOP_URL.'/list.php?ca_id='.$row['ca_id']; ?>" class="snb_1da<?php if ($count) echo ' snb_1dam'; ?>"><?php echo $row['ca_name']; ?></a>
				<? } ?> 

 

이 질문에 댓글 쓰기 :

답변 2

<?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_id ";
        $hresult = sql_query($hsql);
        $snb_zindex = 999; // snb_1dli z-index 값 설정용
        for ($i=0; $row=sql_fetch_array($hresult); $i++)
        {
            $snb_zindex -= 1; // html 구조에서 앞선 snb_1dli 에 더 높은 z-index 값 부여
	    // 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_id ";
            $result2 = sql_query($sql2);
            $count = mysql_num_rows($result2);
 
			$code = $row[ca_id];
			$code = substr($code, 0, 2);
			$ca_id_on = substr($ca_id, 0, 2);
 
        ?> 
 
 
<? if($ca_id_on == $code) { ?>
					<a href="<?php echo G5_SHOP_URL.'/list.php?ca_id='.$row['ca_id']; ?>" style="background:#e3001b;" class="snb_1da<?php if ($count) echo ' snb_1dam'; ?>"><?php echo $row['ca_name']; ?></a>
				<? } else { ?>
					<a href="<?php echo G5_SHOP_URL.'/list.php?ca_id='.$row['ca_id']; ?>" class="snb_1da<?php if ($count) echo ' snb_1dam'; ?>"><?php echo $row['ca_name']; ?></a>
				<? } ?> 

 

이런 식으로 하면 되지 않을까요

​$code = substr($code, 0, 2); 하신 것처럼 

$ca_id 도 그렇게 처리하신 다음에 비교하면 되죠.

 

$ca_id 를 바꿔버리면 안 되니까 비교용 변수명은 $ca_id_on 처럼만 하시면 되겠습니다.

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

회원로그인

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