g5_shop_cart 테이블의 내역을 그대로 불러오는 소스코드입니다.
본문
아래는 g5_shop_cart 테이블의 내역을 그대로 불러오는 소스코드입니다.
orderform.php 의 내용을 일부 발췌하였습니다.
g5_shop_cart 테이블의 내용은 잘 불러오는데요.
주문,입금,배송 등의 상태를 게시물을 체크하고 변경하면,
마지막에 등록한 od_id가 같은 게시물만 상태값이 변경이 되고,
나머지 게시물은 변경이 안되네요.
od_id 가 배열로 orderformcartupdate.php에 저장이 되어야 할 것 같은데,
어떻게해야 될까요? 고수님들 도움 부탁 드려요ㅜ
<?php
$sub_menu = '400420';
include_once('./_common.php');
$g5['title'] = "주문 내역 수정";
include_once(G5_ADMIN_PATH.'/admin.head.php');
$sql = " select it_id,
it_name,
cp_price,
ct_notax,
ct_send_cost,
ct_status,
od_id,
it_sc_type
from {$g5['g5_shop_cart_table']}
group by it_id
order by ct_id ";
$result = sql_query($sql);
?>
<section id="anc_sodr_list">
<h2 class="h2_frm">주문상품 목록</h2>
<form name="frmorderform" method="post" action="./orderformcartupdate.php" onsubmit="return form_submit(this);">
<input type="hidden" name="mb_id" value="<?php echo $od['mb_id']; ?>">
<input type="hidden" name="od_email" value="<?php echo $od['od_email']; ?>">
<input type="hidden" name="sort1" value="<?php echo $sort1; ?>">
<input type="hidden" name="sort2" value="<?php echo $sort2; ?>">
<input type="hidden" name="sel_field" value="<?php echo $sel_field; ?>">
<input type="hidden" name="search" value="<?php echo $search; ?>">
<input type="hidden" name="page" value="<?php echo $page;?>">
<input type="hidden" name="pg_cancel" value="0">
<div class="tbl_head01 tbl_wrap">
<table>
<caption>주문 상품 목록</caption>
<thead>
<tr>
<th scope="col"><input type="checkbox" id="sit_select_all">전체선택</th>
<th scope="col">상태</th>
<th scope="col">수량</th>
<th scope="col">판매가</th>
<th scope="col">소계</th>
<th scope="col">쿠폰</th>
<th scope="col">포인트</th>
<th scope="col">배송비</th>
</tr>
</thead>
<tbody>
<?php
$chk_cnt = 0;
// 상품이미지
$image = get_it_image($row['it_id'], 50, 50);
// 상품의 옵션정보
$sql = " select ct_id, od_id, it_id, ct_price, ct_point, ct_qty, ct_option, ct_status, cp_price, ct_stock_use, ct_point_use, ct_send_cost, io_type, io_price, it_sc_price
from {$g5['g5_shop_cart_table']}
order by io_type asc, ct_id asc ";
$res = sql_query($sql);
$rowspan = sql_num_rows($res);
// 합계금액 계산
$sql = " select SUM(IF(io_type = 1, (io_price * ct_qty), ((ct_price + io_price) * ct_qty))) as price,
SUM(ct_qty) as qty
from {$g5['g5_shop_cart_table']} ";
$sum = sql_fetch($sql);
// 배송비
switch($row['ct_send_cost'])
{
case 1:
$ct_send_cost = '착불';
break;
case 2:
$ct_send_cost = '무료';
break;
default:
$ct_send_cost = '선불';
break;
}
// 조건부무료
if($row['it_sc_type'] == 2) {
$sendcost = get_item_sendcost($row['it_id'], $sum['price'], $sum['qty'], $od['od_id']);
if($sendcost == 0)
$ct_send_cost = '무료';
}
for($k=0; $opt=sql_fetch_array($res); $k++) {
if($opt['io_type'])
$opt_price = $opt['io_price'];
else
$opt_price = $opt['ct_price'] + $opt['io_price'];
// 소계
$ct_price['stotal'] = $opt_price * $opt['ct_qty'];
$ct_point['stotal'] = $opt['ct_point'] * $opt['ct_qty'];
?>
<tr>
<td class="td_left">
<label for="ct_chk_<?php echo $chk_cnt; ?>" class="sound_only"><?php echo get_text($opt['ct_option']); ?></label>
<input type="checkbox" name="ct_chk[<?php echo $chk_cnt; ?>]" id="ct_chk_<?php echo $chk_cnt; ?>" value="<?php echo $chk_cnt; ?>" class="sct_sel_<?php echo $i; ?>">
<input type="hidden" name="ct_id[<?php echo $chk_cnt; ?>]" value="<?php echo $opt['ct_id']; ?>">
<?php echo get_text($opt['ct_option']); ?>
<input type="text" name="od_id" value="<?php echo $opt['od_id']; ?>">
</td>
<td class="td_mngsmall"><?php echo $opt['ct_status']; ?></td>
<td class="td_num">
<label for="ct_qty_<?php echo $chk_cnt; ?>" class="sound_only"><?php echo get_text($opt['ct_option']); ?> 수량</label>
<?php echo $opt['ct_qty']; ?>
</td>
<td class="td_num_right "><?php echo number_format($opt_price); ?></td>
<td class="td_num_right"><?php echo number_format($ct_price['stotal']); ?></td>
<td class="td_num_right"><?php echo number_format($opt['cp_price']); ?></td>
<td class="td_num_right"><?php echo number_format($ct_point['stotal']); ?></td>
<td class="td_num_right"><?php echo $ct_send_cost; ?> <?php echo number_format($opt['it_sc_price']); ?></td>
</tr>
<?php
$chk_cnt++;
}
?>
</tbody>
</table>
</div>
<div class="btn_list02 btn_list">
<p>
<input type="hidden" name="chk_cnt" value="<?php echo $chk_cnt; ?>">
<strong>주문 및 장바구니 상태 변경</strong>
<input type="submit" name="ct_status" value="주문" onclick="document.pressed=this.value" class="btn_02 color_01">
<input type="submit" name="ct_status" value="입금" onclick="document.pressed=this.value" class="btn_02 color_02">
<input type="submit" name="ct_status" value="준비" onclick="document.pressed=this.value" class="btn_02 color_03">
<input type="submit" name="ct_status" value="배송" onclick="document.pressed=this.value" class="btn_02 color_04">
<input type="submit" name="ct_status" value="완료" onclick="document.pressed=this.value" class="btn_02 color_05">
<input type="submit" name="ct_status" value="취소" onclick="document.pressed=this.value" class="btn_02 color_06">
<input type="submit" name="ct_status" value="반품" onclick="document.pressed=this.value" class="btn_02 color_06">
<input type="submit" name="ct_status" value="품절" onclick="document.pressed=this.value" class="btn_02 color_06">
</p>
</div>
</form>
</section>
<script>
function form_submit(f)
{
var check = false;
var status = document.pressed;
for (i=0; i<f.chk_cnt.value; i++) {
if (document.getElementById('ct_chk_'+i).checked == true)
check = true;
}
if (check == false) {
alert("처리할 자료를 하나 이상 선택해 주십시오.");
return false;
}
var msg = "";
if (confirm(msg+"\'" + status + "\' 상태를 선택하셨습니다.\n\n선택하신대로 처리하시겠습니까?")) {
return true;
} else {
return false;
}
}
function del_confirm()
{
if(confirm("주문서를 삭제하시겠습니까?")) {
return true;
} else {
return false;
}
}
</script>
<?php
include_once(G5_ADMIN_PATH.'/admin.tail.php');
?>
답변 1
<input type="text" name="od_id[<?php echo $chk_cnt; ?>]" value="<?php echo $opt['od_id']; ?>">
이렇게 array로 쏘시고
orderformcartupdate.php 에서 chk처리하는 구간 수정해주시면 될 듯하네요
!-->