장바구니 세션 값을 이용해서 상품 정보를 가져오려고 합니다.

장바구니 세션 값을 이용해서 상품 정보를 가져오려고 합니다.

QA

장바구니 세션 값을 이용해서 상품 정보를 가져오려고 합니다.

본문

안녕하세요. 항상 도움을 받고 있습니다. 감사합니다. 장바구니 세션 값을 이용해서 상품 정보를 게시판 글쓰기 화면에 가져오려고 합니다. 그대로 값을 가져오려고 하면 출력이 잘 되는데 for 루프문을 이용하면 count = 0 으로 아무런 값이 나오지 않습니다. 쿼리문이 잘 못 된 것일까요? 그럼 왜 for 루프문을 이용하지 않으면 값이 잘 나오는지요 ㅠㅠ 

 

<?php

include_once('./_common.php');  

 

$tmp_cart_id = get_session('ss_cart_id');

 

// 브라우저에서 쿠키를 허용하지 않은 경우라고 볼 수 있음.

if (!$tmp_cart_id)

{

 alert('더 이상 작업을 진행할 수 없습니다.\\n\\n브라우저의 쿠키 허용을 사용하지 않음으로 설정한것 같습니다.\\n\\n쿠키 허용을 사용함으로 설정하신 후 다시 시도해 주십시오.\\n\\n그래도 진행이 되지 않는다면 쇼핑몰 운영자에게 문의 바랍니다.');

}

 

$tmp_cart_id = preg_replace('/[^a-z0-9_\-]/i', '', $tmp_cart_id);

 

$sql = " select * from {$g5['g5_shop_cart_table']} where od_id = '$tmp_cart_id' ";

 

$result = sql_query($sql);

 

$row = sql_fetch_array($result);

?>

 

<div>

<?php

echo get_it_image($row['it_id'], 80, 80);

 

echo $row['it_id'];

 

echo get_text($row['it_name']);

 

echo number_format($row['ct_qty']);

?>

</div>

 

<div class="table-responsive order-item">

 <table id="sod_list" class="div-table table bg-white bsk-tbl">

 <tbody>

 <tr>

  <th scope="col"><span>이미지</span></th>

  <th scope="col"><span>상품명</span></th>

  <th scope="col"><span>총수량</span></th>

 </tr>

 <?php for ($i = 0; $row = sql_fetch_array($result); $i++) { ?>

  <tr>

   <td class="text-center">

    <div class="item-img">

     <?php echo get_it_image($row['it_id'], 70, 70); ?>

    </div>

   </td>

   <td class="text-center"><?php echo get_text($row['it_name']); ?></td>

   <td class="text-center"><?php echo number_format($row['ct_qty']); ?></td>

  </tr>

 <?php } ?>

 </tbody>

 </table>

</div>

이 질문에 댓글 쓰기 :

답변 1

$tmp_cart_id 값을 상단에서 출력하시고,

값이 있는지 확인 해보시구요.

값이 있다면,

해당 쿼리문을 다시 찍어서,

phpmyadmin 이나 기타 db접속툴로 해당 쿼리를 직접 쳐서 실행이되는지,

db에서 데이터 행을 뽑아오는지 확인하시고

순차적으로 다음다음 넘어가보세요.

항상 오류나 디버깅은 순차적으로 해결하시는 버릇을 하시는게 좋습니다.^^

해결했습니다. "fetch array 는 내부에 커서가 있어서 실행할 때마다 한칸 씩 이동하고 끝으로 가면 데이터가 없게 된다. 한 번 끝으로 간 걸 다시 for 루프문으로 넣어봐야 데이터가 안 나온다. 이미 커서는 끝을 가리키고 있기 때문이다." 라고 답변을 들었습니다. 상단의 <div> 태그에서 이미 데이터를 가져왔기 때문에 하단의 <div> 태그에서 for 루프문을 돌려도 데이터가 안 나오는 거였습니다. 답변 감사합니다!

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

회원로그인

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