미채택 완료

주문내역 쿼리 질문드립니다 ㅠ

2017-03-03 (금) 09:56:40 4,555

주문내역이

기본은

주문번호와 일시 금액 상태 정도만 출력을하는데..

상품 이미지, 상품명, 옵션명도 출력해야해서 

cart table 에서 od_id 가 맞는걸 갖고와서 출력시켜줬습니다

출력은 다 되는데..

만약 한번에 주문으로 2개이상의 물건을 사게 될 경우;

제가 쿼리를 잘못 짜서 그런지.. 2번째 상품은 옵션이 출력이 안되어버리네요

소스와 링크 그리고 아이디 비밀번호를 적어 두겠습니다 ㅠ

힌트라도 주신다면..감사하겠습니다 ㅠ

사이트 들어가서 로그인해서 주문내역 보시면

주문내역 아래

1~8까지 숫자로 구성된 테이블이 있는데..

만약 주문번호1개에 2개 이상의 상품이 있다면

숫자로 구성된 테이블처럼 출력이 되야 해서요 ㅠㅠ

for문 전 쿼리에서 order_table의 od_id와 cart_table의 od_id 가 같은

자료만 갖고와서

for문 안에서 어떤 쿼리를 날려줘야 하는지 ㅠㅠ

링크

http://121.164.172.240:88/shop/ 

아이디

farmsismall

비번

1234

Copy
<?phpif (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가 if (!defined("_ORDERINQUIRY_")) exit; // 개별 페이지 접근 불가 // 테마에 orderinquiry.sub.php 있으면 includeif(defined('G5_THEME_SHOP_PATH')) {    $theme_inquiry_file = G5_THEME_SHOP_PATH.'/orderinquiry.sub.php';    if(is_file($theme_inquiry_file)) {        include_once($theme_inquiry_file);        return;        unset($theme_inquiry_file);    }}$s_cart_id = get_session('ss_cart_id');set_cart_id($sw_direct); // 선택필드 초기화$sql = " UPDATE {$g5['g5_shop_cart_table']} SET ct_select = '0' WHERE od_id = '$s_cart_id' ";sql_query($sql); // 주문내역 삭제$orderinquiry_del_url = G5_SHOP_URL.'/orderinquiry.sub.del.php'; ?> <!-- 회원정보 개요 시작 { --><section id="smb_my_ov">	<h2>마이페이지 개요</h2>	<table>		<caption class="sound_only">마이페이지 하부 메뉴</caption>		<thead>			<tr>				<th>상품 관리</th>				<th>구매 관리</th>				<th>활동 관리</th>			</tr>		</thead>		<tbody>			<tr>				<td><a href="<?php echo G5_SHOP_URL ?>/wishlist.php" title="관심 상품">관심 상품</a></td>				<td><a href="<?php echo G5_SHOP_URL ?>/orderinquiry.php" title="주문 내역">주문내역</a></td>				<td><a href="<?php echo G5_SHOP_URL ?>/mypage_itemqalist.php" title="1:1문의">1:1문의</a></td>			</tr>			<tr>				<td><a href="<?php echo G5_SHOP_URL ?>/today_view.php" title="오늘 본 상품">오늘 본 상품</a></td>				<td><a href="<?php echo G5_SHOP_URL ?>/cart.php" title="장바구니">장바구니</a></td>				<td><a href="<?php echo G5_SHOP_URL ?>/mypage_itemuselist.php" title="구매후기">구매후기</a></td>			</tr>			<tr>				<td></td>				<td></td>				<td><a href="<?php echo G5_BBS_URL ?>/board.php?bo_table=ShopAlliance&sca=&sop=and&sfl=mb_id%2C1&stx=<?php echo $member['mb_id'] ?>" title="제휴제안">제휴제안</a></td>			</tr>		</tbody>	</table></section><!-- } 회원정보 개요 끝 --> <!-- 주문 내역 목록 시작 { --><?php if (!$limit) { ?>총 <?php echo $cnt; ?> 건<?php } ?> <div class="tbl_head01 tbl_wrap">	<form name="frmoilist" id="orderinquiry_list" method="post" action="<?php echo $orderinquiry_del_url; ?>">		<table class="tbl_inquiry">			<colgroup>				<col width="30px">				<col width="60px">				<col width="100px">				<col width="70px">				<col width="425px">				<col width="110px">				<col width="120px">				<col width="80px">			</colgroup>			<thead>				<tr>					<th scope="col">						<label for="ct_all" class="sound_only">상품 전체</label>						<input type="checkbox" name="ct_all" value="1" id="ct_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/*				$sql = " SELECT *							FROM {$g5['g5_shop_order_table']}							WHERE mb_id = '{$member['mb_id']}'							ORDER BY od_id desc							$limit ";*/				$sql = " SELECT 							*							FROM {$g5['g5_shop_cart_table']} a							LEFT JOIN {$g5['g5_shop_order_table']} b							ON a.od_id = b.od_id							WHERE b.mb_id = '{$member['mb_id']}' AND a.od_id = b.od_id							GROUP BY a.it_name, a.od_id							ORDER BY a.od_id DESC							$limit							";print_r ($sql); 				$result = sql_query($sql);				$num = 0;				$num = $total_count - ($page - 1) * $rows + $i;				for ($i=0; $row=sql_fetch_array($result); $i++)				{//					$od_id = $row['od_id']; 					$sql2 = "SELECT 								a.od_id,								a.it_id,								a.mb_id,								a.it_name,								a.io_price,								b.od_id,								b.mb_id								FROM {$g5['g5_shop_cart_table']} a								LEFT JOIN {$g5['g5_shop_order_table']} b								ON a.od_id = b.od_id								WHERE it_id = {$row['it_id']}								";/*					$sql2 = "SELECT 								od_id,								it_id,								mb_id,								it_name,								io_price								FROM {$g5['g5_shop_cart_table']}								WHERE it_id = {$row['it_id']}								";*/					$result2 = sql_fetch($sql2);					$image = get_it_image($result2['it_id'], 70, 70);					$uid = md5($row['od_id'].$row['od_time'].$row['od_ip']); 					if ($it_options) {						$it_options = print_item_options($row['it_id'], $s_cart_id);					} else {						$it_options = "<p class=\"opt_list\">".$row['it_name']." ".$row['ct_qty']."개 (+".number_format($row['ct_price'])."원)</p>";					} 					switch($row['od_status']) {						case '주문':							$od_status = '입금확인중';							break;						case '입금':							$od_status = '완료';							break;						case '준비':							$od_status = '상품준비중';							break;						case '배송':							$od_status = '상품배송';							break;						case '완료':							$od_status = '완료';							break;						default:							$od_status = '주문취소';							break;					}					$num--;										for($j=0; $j < count($result2['it_name']); $j++) {			?>			<tr>				<td rowspan="">					<label for="ct_chk_<?php echo $i; ?>" class="sound_only">주문</label>					<input type="checkbox" name="ct_chk[<?php echo $i; ?>]" value="1" id="ct_chk_<?php echo $i; ?>">				</td>				<td rowspan="">					<?php echo $num; ?>				</td>				<td rowspan="">					<input type="hidden" name="it_id[<?php echo $i; ?>]" value="<?php echo $row['it_id']; ?>">					<input type="hidden" name="od_id[<?php echo $i; ?>]" value="<?php echo $row['od_id']; ?>">					<a href="<?php echo G5_SHOP_URL; ?>/orderinquiryview.php?od_id=<?php echo $row['od_id']; ?>&amp;uid=<?php echo $uid; ?>"><?php echo $row['od_id']; ?></a>				</td>				<td class="td_image">					<a href="./item.php?it_id=<?php echo $row['it_id']; ?>">						<?php echo $image; ?>					</a>				</td>				<td>					<p>						<a href="./item.php?it_id=<?php echo $row['it_id']; ?>">							<?php echo $row['it_name']; ?>						</a>						<br>						<?php if($it_options) { ?>							<?php echo $it_options; ?>						<?php } ?>					</p>				</td>				<td rowspan="" class="td_numbig">					<?php //echo display_price($row['od_cart_price'] + $row['od_send_cost'] + $row['od_send_cost2']); ?>					<?php echo display_price(($row['ct_price'] * $row['ct_qty']) + $row['io_price']); ?>				</td>				<td rowspan=""><?php echo substr($row['od_time'],2,14); ?> (<?php echo get_yoil($row['od_time']); ?>)</td>				<td rowspan=""><?php echo $od_status; ?></td>			</tr>			<?php			}			} // 첫번째 for 			if ($i == 0)				echo '<tr><td colspan="8" class="empty_table">주문 내역이 없습니다.</td></tr>';			?> 			<tr>				<td rowspan="3">1</td>				<td rowspan="3">2</td>				<td rowspan="3">3</td>				<td>4</td>				<td>5</td>				<td rowspan="3">6</td>				<td rowspan="3">7</td>				<td rowspan="3">8</td>			</tr>			<tr>				<td>4</td>				<td>5</td>			</tr>			<tr>				<td>4</td>				<td>5</td>			</tr>			</tbody>		</table>		<?php  if ($total_count != 0)  { ?>		<div class="inquiry_btn">			<input type="hidden" name="url" value="./orderinquiry.php">			<input type="hidden" name="records" value="<?php echo $i; ?>">			<input type="hidden" name="act" value="">			<button type="button" onclick="return form_check('alldelete');" class="btn01">전체삭제</button>			<button type="button" onclick="return form_check('seldelete');" class="btn01">선택삭제</button>		</div>		<?php } ?>	</form>	<?php echo $row['od_id'];?></div> <script type="text/javascript">	$(function() {		// 모두선택		$("input[name=ct_all]").click(function() {			if($(this).is(":checked"))				$("input[name^=ct_chk]").attr("checked", true);			else				$("input[name^=ct_chk]").attr("checked", false);		});	}); 	function form_check(act) {		var f = document.frmoilist;		var cnt = f.records.value; 		if (act == "alldelete")		{			if(confirm("정말 삭제하시겠습니까?")) {				f.act.value = act;				f.submit();			} else {				return;			}		}		else if (act == "seldelete")		{			if($("input[name^=ct_chk]:checked").size() < 1) {				alert("삭제하실 주문내역을 하나 이상 선택해 주십시오.");				return false;			} 			if(confirm("정말 삭제하시겠습니까?")) {				f.act.value = act;				f.submit();			} else {				return;			}		}		return true;	}</script><!-- } 주문 내역 목록 끝 -->

답변 1개 / 댓글 1개

2017-03-03 (금) 11:20:12
Copy
while($row = sql_fetch_array($result)) {    echo $row['od_id'];}

답변에 대한 댓글 1개

위의 소스는
row 한줄씩 질의할때 마다
주문번호를 찍으라는 건가요?

한가지 더 궁금한건, (주문1건에 대해 2가지 이상 상품이 존재할경우)
상품명과 이미지는 가져오는데..
옵션명을
두번째 상품부터 못가져 옵니다 ㅠ

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