장바구니 상품 옵션에 상품 이름나오는거 삭제

장바구니 상품 옵션에 상품 이름나오는거 삭제

QA

장바구니 상품 옵션에 상품 이름나오는거 삭제

답변 2

본문

안녕하세요 

장바구니에서 상품 옵션이 나오는 자리에,

옵션 설정이 안되어있으면 상품이름이 나오고 있는데요 

상품 옵션이 설정 안되어있으면 빈값으로 노출되도록 할 수 있을까요??

 

mysql에서 확인해봤는데 

db 테이블서도 동일하게, 상품 옵션이 설정 안되어 있으면 상품 이름이 들어가 있더라구요

아래는 관련 이미지와 관련 코드입니다 !

 

990897156_1728791014.4046.png

 

990897156_1728791042.5685.png

 


<?php 
$sql = " select a.ct_id,
                                a.it_id,
                                a.it_name,
                                a.ct_price,
                                a.ct_point,
                                a.ct_qty,
                                a.ct_status,
                                a.ct_send_cost,
                                a.it_sc_type,
                                a.io_type,
                                a.io_price,
                                a.ct_option,
                                a.io_id,
                                b.ca_id,
                                b.ca_id2,
                                b.ca_id3
                           from {$g5['g5_shop_cart_table']} a left join {$g5['g5_shop_item_table']} b on ( a.it_id = b.it_id )
                          where a.od_id = '$s_cart_id' ";
                //$sql .= " group by a.it_id ";
                $sql .= " order by a.it_id,a.ct_id ";
                $result = sql_query($sql);
?>
 
<div class="name">
  <?php echo $it_name; ?>
</div>
<div class="option">
  <?php echo $row['ct_option'];?>
</div>
 

이 질문에 댓글 쓰기 :

답변 2

※ 상품 옵션이 설정되지 않았을 때

   상품 이름 대신 빈 값을 노출되도록 한다는 말씀 !!!

 

    > > > ct_option 필드가 빈 값이 아닌 경우, 표시되는 조건문 사용 .

 

♠ 수정 소스 - 참고 -

<div class="name">
  <?php echo $it_name; ?>
</div>
<div class="option">
  <?php 
  if (!empty($row['ct_option'])) {
      echo $row['ct_option'];
  } else {
      echo "";
  }
  ?>
</div>

mysql에서 확인결과

ct_option이 빈값인 경우가 없습니다 ㅠㅠ 

ct_option table에 옵션설정인 경우 옵션내용이 담겨있고 

옵션설정이 없은 경우는 상품이 이름이 담겨있습니다!

※ 상품 옵션이 없는 경우인데도 상품 이름이 담겨 있는 이유는
 아마도 상품 옵션을 설정하지 않은 경우에도
 상품 이름을 ct_option 필드에 넣도록 설정된 기존 로직 때문인가 봅니다.

※ 쿼리 수정 ​​​​​​​


UPDATE {$g5['g5_shop_cart_table']}
SET ct_option = ''
WHERE ct_option = it_name;


※ PHP 로직 수정 ​​​​​​​

$ct_option = ''; 
if (!empty($user_selected_option)) {
    $ct_option = $user_selected_option;
} else {
    $ct_option = '';
}
$sql = "INSERT INTO {$g5['g5_shop_cart_table']} (it_id, it_name, ct_option, ...)
        VALUES ('$it_id', '$it_name', '$ct_option', ...)";
sql_query($sql);


※  PHP 코드에서 조건을 설정할 수도 있음 ​​​​​​​

<div class="name">
  <?php echo $it_name; ?>
</div>
<div class="option">
  <?php 
  if ($row['ct_option'] != $it_name) {
      echo $row['ct_option'];
  } else {
      echo ""; 
  }
  ?>
</div>
ct_option이 상품 이름과 같으면 빈 값 출력

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