입력한 옵션값을 출력하고 싶어요~ > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

입력한 옵션값을 출력하고 싶어요~ 정보

입력한 옵션값을 출력하고 싶어요~

본문

그누보드 홈페이지에 결제부분만 배추빌더를 사용중입니다.
php엔 약한 웹디자이너라서 문제가 생길 때마다 
질답 게시판에서 고수님들의 도움을 많이 받네요~^^

주문신청내역을 확인하는 페이지 인데
주문시 옵션값으로 선택한       부분이 출력이 안되네요~
화면에서 보시면 수업희망시간 출력되는 부분입니다.

테스트 url:
http://yoyoenglish2010.com/shop/order.php?OID=O126819362540

소스코드는 shop/order.php 입니다.
------------------------------------------------------------------------------------
<?
include("./_common.php");
include_once("$g4[path]/_head2.php");

$shop = get_shop();
$goods_dir = $g4[path]."/data/goods/";
$CART = explode("/",$_SESSION["g4_cart"]);
$tmpField = explode("|",$CART[0]);
$tmpGcode = explode("OP",$tmpField[0]);

$goods = get_goods($tmpGcode[0]);
$category_info = get_category($goods[c_code]);
$g_option[0] = get_option($goods[g_option],$tmpGcode[1]);

if($OID!="")
{
 $order_row = mysql_fetch_array(mysql_query("select * from g4_order where oid='".$OID."' limit 1"));
}
else
{
 echo("<script>alert('잘못된 접속입니다.');self.close();</script>");
}
?>

<link rel="stylesheet" href="<?=$g4['path']?>/shop/style.css" type="text/css">
<script language="javascript" src="<?=$g4['path']?>/js/common.js"></script>
<script language="javascript" src="<?=$g4['path']?>/js/jquery.js"></script>
<script language="javascript" src="<?=$g4['path']?>/js/sideview.js"></script>
<script language="javascript" src="<?=$g4['path']?>/shop/shop.js"></script>
<link rel="stylesheet" href="<?=$g4['admin_path']?>/admin.style.css" type="text/css">
<style>
body{padding:0px;margin:0px}
.sTitle{font-size:16px;font-weight:bold;color:#000066}
.index1{color:#000000;padding-left:10px;background:#EFEFFF}
.index2{color:#000000;background:#EFEFFF}
</style>
<script>
function ShowHistory(ID)
{
 if(document.all(ID).style.display=='none')
 {
  document.all(ID).style.display="inline";
 }
 else
 {
  document.all(ID).style.display='none';
 }
}

function frmCheck()
{
 var frm = document.orderFrm;

 if(frm.status.value == "4" && (frm.tranc.value=="" || frm.tranc_num.value==""))
 {
  alert("배송정보를 입력하세요.");
  frm.tranc.focus();
 }
 else
 {
  if(confirm("수정 하시겠습니까?"))
  {
   frm.submit();
  }
  else
  {
   return false;
  }
 }
}
</script>
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<form name="orderFrm" method="post" action="index.php">
<input type="hidden" name="OID" value="<?=$order_row[oid]?>">
  <tr>
    <td colspan="2" height="60" valign="bottom" style="padding:0 0 15px 0;"><img src="../sub4/sub4_img/title_03.gif" alt="수강신청" width="132" height="33" /></td>
  </tr>
</table>
<table cellpadding="0" cellspacing="0" border="0" width="660">
<tr>
  <td align="center">
  <?if($order_row[idx]!=""){?>
   <table cellpadding="0" cellspacing="0" border="0" width="100%">
    <tr>
     <td>
      <span class="sTitle"><li>수강신청내역</li></span>
      <table cellpadding="3" cellspacing="0" border="0" width="100%" style="border:solid 1px #DDDDDD">
       <colgroup>
        <col>
        <col>
        <col>
        <col>
       </colgroup>
       <tr align="center">
        <td class="index2">수강코드</td>
        <td class="index2">수강종류</td>
        <td class="index2">수업희망 시간</td>
         <td class="index2">수업희망 시작일</td>
       </tr>
       <tr><td colspan="4" height="1" bgcolor="#DDDDDD"></td></tr>
    <tr align="center" height="25">
        <td align="center"><?=$order_row[oid]?></td>
        <td align="center"><?=$order_row[o_subject]?></td>
        <td align="center"><?=$g_option[0]?></td>
         <td><?=$order_row[s_memo]?></td>
       </tr>
   <?
    $goods_no++;
    $total_price+= $order_goods[g_price]*$order_goods[cnt] + $order_goods[g_price1]*$order_goods[cnt1];
    if($total_price >= $shop[tranc_if] || $order_goods[g_tranc] == "N" || $order_goods[g_tranc] == "C")
    {
     $total_tranc = 0;
    }
   ?>
       
       </table>
         <br>
  <span class="sTitle"><li>결제내역</li></span>
      <table cellpadding="3" cellspacing="0" border="0" width="100%" style="border:solid 1px #DDDDDD">
       <colgroup>
        <col width="100">
        <col width="">
       </colgroup>
       <tr>
        <td class="index1">실결제금액</td>
        <td><span style="width:120px;color:#FF0000"><?=number_format($order_row[pay_amount])?>원</span></td>
       </tr>
       <tr><td colspan="2" height="1" bgcolor="#DDDDDD"></td></tr>
       <tr>
        <td class="index1">결제방법</td>
        <td><?=get_paymethod($order_row[pay_method])?><?if($order_row[pay_info]!=""){?><br>(<?=$order_row[pay_info]?>)<?}?></td>
       </tr>
       <tr><td colspan="2" height="1" bgcolor="#DDDDDD"></td></tr>
       <tr>
        <td class="index1">상태</td>
        <td>
         <?=get_status($$order_row[status])?>  
        <button class="btn1" style="cursor:pointer" onclick="ShowHistory('<?=$order_row[oid]?>')">상태변경내역</button>
        <DIV style="position:absolute;display:none;" id="<?=$order_row[oid]?>">
        <table cellpadding="5" cellspacing="1" border="0" width="250" bgcolor="#CCCCCC" style="position:absolute;left:-150px;top:+20px">
        <?
        $tmp_status_history = explode("/",$order_row[status_history]);
        for($i=0;$i<count($tmp_status_history);$i++)
        {
         $tmp_history = explode("|",$tmp_status_history[$i]);
         ?>
         <tr bgcolor="#FFFFFF">
          <td><?=number_format($i+1)?></td>
          <td><?=get_status($tmp_history[0]);?></td>
          <td><?=$tmp_history[1]?></td>
         </tr>
         <?
        }
        ?>
        </table>
        </DIV>        </td>
       </tr>
      </table>
        <br>
      <span class="sTitle">
      <li>수강신청인 정보</li>
       </span>
      <table cellpadding="3" cellspacing="0" border="0" width="100%" style="border:solid 1px #DDDDDD">
       <colgroup>
        <col width="100">
        <col width="">
       </colgroup>
       <tr>
        <td colspan="2" style="color:#000000;font-weight:bold">신청인 정보</td>
        </tr>
       <tr><td colspan="2" height="1" bgcolor="#DDDDDD"></td></tr>
       <tr>
        <td class="index1">신청인명</td>
        <td><?=$order_row[o_name]?> <?if($order_row[mb_part]=="member"){?>(회원 : <?=$order_row[mb_id]?>)<?}else{?>(비회원)<?}?></td>
       </tr>
       <tr><td colspan="2" height="1" bgcolor="#DDDDDD"></td></tr>
       <tr>
        <td class="index1">E-mail</td>
         <td><?=$order_row[o_email]?></td>
       </tr>
       <tr><td colspan="2" height="1" bgcolor="#DDDDDD"></td></tr>
       <tr>
        <td class="index1">전화번호</td>
         <td><?=$order_row[o_tel]?></td>
       </tr>
       <tr><td colspan="2" height="1" bgcolor="#DDDDDD"></td></tr>
       <tr>
        <td class="index1">휴대폰</td>
         <td><?=$order_row[o_hp]?></td>
       </tr>
       <tr><td colspan="2" height="1" bgcolor="#DDDDDD"></td></tr>
       <tr>
        <td class="index1">주문일자</td>
        <td><?=$order_row[buy_datetime]?></td>
       </tr>
      </table>
     </td>
    </tr>
   </table>
   <?}else{?>
   <table cellpadding="0" cellspacing="0" border="0" height="100" width="100%">
    <tr>
     <td align="center">주문내역이 없습니다.</td>
    </tr>
   </table>
   <?}?>
  </td>
 </tr>
</form>
</table>
<br />
<br />
<?
include("$g4[path]/_tail.php");

?>

댓글 전체

참 이런부분은 코드만 보고 에러 잡기가 힘들죠.... 함수부분도 봐야하니..
일단은...처음에... 디비에 값이 확실히 있는지 확인하구요...
그리고...

$g_option[0] = get_option($goods[g_option],$tmpGcode[1]);
에서
get_option 합수가... 어떤건지 잘모르게쓴ㄴ데요..

일단...배열이라면...
$g_option = get_option($goods[g_option],$tmpGcode[1]);

이렇게 수정해보면...나올지 확실히는 모르겠습니다. 요부분이 그냥봐서 의심이 되어서. ㅎㅎ
이글이글님~
어제두 명쾌한 답변 너무 감사했는데 또 남겨 주셨네여^^

배열부분은 말씀하신대로 수정했더니 Array라는 문구는 안나오는데 입력값이 안나오네요.

phpMyAdmin에서 확인해보니
g4_goods라는 테이블에 g_option 필드값은 입력 되있네요.
오후1시~오후2시[FIELD]0[RECORD]오후2시~오후3시[FIELD]0[RECORD]...이런식으로

함수 관련된 부분이 어디인지 몰라서 g_option언급된 부분만 일부 올립니다~

<---------------상품명 입력시 옵션값 입력 부분 시작----------------------------------------->
<table cellpadding="0" cellspacing="1" border="0" id="optionTable" width="100%">
<tr align="center" bgcolor="#EFEFEF">
<td width="">옵션명</td>
<td width="120">옵션가격</td>
<td width="50">삭제</td>
</tr>
<?
if($Mode == "UPDATE")
{
$g_option = explode("[RECORD]",$DATA[g_option]);
if($DATA[g_option]!="")
{
for($i=0;$i<count($g_option);$i++)
{
$tmp_option = explode("[FIELD]",$g_option[$i]);
?>
<tr>
<td><input type="text" class="ed" style="width:100%" name="g_option_name[]" value="<?=$tmp_option[0]?>"></td>
<td><input type="text" class="ed" style="width:100px;text-align:right" name="g_option_price[]" value="<?=$tmp_option[1]?>">원</td>
<td><button class='btn1' onclick='SubRows(this)'>취소</button></td>
</tr>
<?
}
}
else
{
?>
<tr>
<td><input type="text" class="ed" style="width:100%" name="g_option_name[]"></td>
<td><input type="text" class="ed" style="width:100px;text-align:right" name="g_option_price[]" value="0">원</td>
<td></td>
</tr>
<?
}
}
else
{
?>
<tr>
<td><input type="text" class="ed" style="width:100%" name="g_option_name[]"></td>
<td><input type="text" class="ed" style="width:100px;text-align:right" name="g_option_price[]" value="0">원</td>
<td></td>
</tr>
<?}?>
</table>

<---------------상품명 입력시 옵션값 입력 부분  종료----------------------------------------->

함수부분 이라면 이게 맞을지 모르겠지만
shop/order_step3.php에 g_option 언급한 부분이 있어서 옮겨봤어요
---------------------------------------------------------------------------------------
<?
include("./_common.php");
include("$g4[path]/_head2.php");
$shop = get_shop();
$goods_dir = $g4[path]."/data/goods/";

$mid = $shop[shop_mid]; //Dacom 제공 상점아이디
$mertkey = $shop[shop_mertkey]; //데이콤에서 발급받은 키값

$shop_mode = $shop[shop_mode];

$home_url = "http://".$_SERVER["SERVER_NAME"]."/shop/order_success.php";
$note_url = "http://".$_SERVER["SERVER_NAME"]."/shop/note_url.php"; //결과 화면처리 페이지 (http 또는 https 로 시작하는 전체 URL 지정 : 직접제작)
$fail_url = "http://".$_SERVER["SERVER_NAME"]."/shop/order_fail.php"; //결제실패 처리 화면




if(trim($_SESSION["g4_cart"])!="")
{

$oid = "O".time().rand(10,99); //주문번호

$CART = explode("/",$_SESSION["g4_cart"]);

$tmpCart = explode("|",$CART[0]);

$tmpCartGcode = explode("OP",$tmpCart[0]);

$tmpGoods = get_goods($tmpCartGcode[0]);
if(count($CART) > 1)
{
$o_subject_str = " 외 ".number_format(count($CART) - 1)."건";
}

$o_subject = $tmpGoods[g_name].$o_subject_str;
$pay_price = str_replace(",","",$pay_price);
$pay_tranc = str_replace(",","",$pay_tranc);
$pay_point = str_replace(",","",$pay_point);
$pay_amount = str_replace(",","",$pay_amount);
$pay_pid = $pay_pid1.$pay_pid2;

if($pay_method == "iche"){$pay_user = $pay_iche_user;}else{$pay_iche_user = "";}
if($pay_method == "bank"){$pay_user = $bank_user;$pay_info = $bank_info;}else{$bank_user = ""; $bank_info = "";}
$status = "0";
$status_history = "0|".date("Y-m-d H:i:s");


$sql = "insert into g4_order set ";
$sql.= "oid = '".$oid."', ";
$sql.= "mb_id = '".$mb_id."', ";
$sql.= "mb_part = '".$mb_part."', ";
$sql.= "o_subject = '".$o_subject."', ";
$sql.= "o_name = '".$o_name."', ";
$sql.= "o_email = '".$o_email."', ";
$sql.= "o_tel = '".$o_tel."', ";
$sql.= "o_hp = '".$o_hp."', ";
$sql.= "o_zip = '".$o_zip."', ";
$sql.= "o_addr1 = '".$o_addr1."', ";
$sql.= "o_addr2 = '".$o_addr2."', ";
$sql.= "s_name = '".$s_name."', ";
$sql.= "s_email = '".$s_email."', ";
$sql.= "s_tel = '".$s_tel."', ";
$sql.= "s_hp = '".$s_hp."', ";
$sql.= "s_zip = '".$s_zip."', ";
$sql.= "s_addr1 = '".$s_addr1."', ";
$sql.= "s_addr2 = '".$s_addr2."', ";
$sql.= "s_memo = '".$s_memo."', ";
$sql.= "pay_amount = '".$pay_amount."', ";
$sql.= "pay_method = '".$pay_method."', ";
$sql.= "pay_point = '".$pay_point."', ";
$sql.= "pay_tranc = '".$pay_tranc."', ";
$sql.= "pay_price = '".$pay_price."', ";
$sql.= "pay_info = '".$pay_info."', ";
$sql.= "status = '".$status."', ";
$sql.= "status_history = '".$status_history."', ";
$sql.= "pay_user = '".$pay_user."', ";
$sql.= "pay_pid = '".$pay_pid."', ";
$sql.= "remote_ip = '".$_SERVER["REMOTE_ADDR"]."', ";
$sql.= "buy_datetime = now() ";

$rst = mysql_query($sql);

if($rst)
{
if(trim($_SESSION["g4_cart"]))
{
for($i=0;$i<count($CART);$i++)
{
$tmpRecord = explode("|",$CART[$i]);
$tmpCartRow = explode("OP",$tmpRecord[0]);

$tmpCartGoods = get_goods($tmpCartRow[0]);
$tmpOption = get_option($tmpCartGoods[g_option],$tmpCartRow[1]);

$tot_price = ($tmpCartGoods[g_price]+$tmpOption[1]) * $tmpRecord[1];
$sql2 = "insert into g4_order_goods set ";
$sql2.= "oid = '".$oid."', ";
$sql2.= "mb_id = '".$mb_id."', ";
$sql2.= "mb_part = '".$mb_part."', ";
$sql2.= "g_code = '".$tmpCartGoods[g_code]."', ";
$sql2.= "g_name = '".$tmpCartGoods[g_name]."', ";
$sql2.= "g_option = '".$tmpOption[0]."|".$tmpOption[1]."', ";
$sql2.= "cnt = '".$b_mem."', ";
$sql2.= "cnt1 = '".$s_mem."', ";
$sql2.= "g_price = '".$g_price."', ";
$sql2.= "g_price1 = '".$g_price1."', ";
$sql2.= "g_tranc = '".$tmpCartGoods[g_tranc]."', ";
$sql2.= "tot_price = '".$tot_price."', ";
$sql2.= "buy_datetime = now() ";

$rst2 = mysql_query($sql2);

if($rst2)
{
$goods_sql = "update g4_goods set g_cnt = g_cnt - ".$tmpRecord[1].", g_sale = g_sale + ".$tmpRecord[1]." where g_code = '".$tmpCartGoods[g_code]."' limit 1";
$goods_rst = mysql_query($goods_sql);
}
}
}
}

if($mb_part == "member" && $pay_point > 0)
{
$sql3 = "insert into g4_point set ";
$sql3.= "mb_id = '".$mb_id."', ";
$sql3.= "po_datetime = now(), ";
$sql3.= "po_content = '주문번호 [".$oid."]건 결제', ";
$sql3.= "po_point = '-".$pay_point."', ";
$sql3.= "po_rel_table = '@shop', ";
$sql3.= "po_rel_id = 'system', ";
$sql3.= "po_rel_action = '".date("Y-m-d")."' ";

$rst3 = mysql_query($sql3);

if($rst3)
{
$sql4 = "update g4_member set mb_point = mb_point - ".$pay_point." where mb_id = '".$mb_id."' limit 1";
$rst4 = mysql_query($sql4);
}
}

$_SESSION["g4_cart"] = "";
$_SESSION["g4_oid"] = $oid;
}
elseif(trim($_SESSION["g4_oid"])!="")
{
$oid = trim($_SESSION["g4_oid"]);
}
else
{
echo("<script>alert('잘못된 접속입니다.');location.href='".$g4[path]."/shop/goods_list.php';</script>");
}

if($oid != "")
{

$sql = "select * from g4_order where oid='".$oid."' limit 1";
$rst = mysql_query($sql);
$order_row = mysql_fetch_array($rst);

$hashdata = md5($mid.$oid.$order_row[pay_amount].$mertkey);
?>
<link rel="stylesheet" href="<?=$g4['path']?>/shop/style.css" type="text/css">
<script language="javascript" src="<?=$g4['path']?>/shop/shop.js"></script>
<DIV id="PG_BG_LAYER" style="z-index:99;width:1280;height:1024;position:absolute;left:0px;top:0px;background:#000000;display:none;filter:alpha(style='0', opacity='70');"></DIV>
<DIV id="PG_LAYER" style="z-index:100;position:absolute;width:330px;height:450px;left:50%;margin-left:-165px;top:100px;display:none;">
  <DIV style="width:330px;height:20px;background:#3399FF;text-align:right"><span style="color:#FFFFFF;cursor:pointer" onclick="PG_CLOSE();">닫기</span></div>
  <iframe name="payFrame" width="330" height="430" frameborder="0" scrolling="no"></iframe>
</DIV>
<table cellpadding="0" cellspacing="0" border="0" width="100%">
  <tr>
    <td colspan="2" height="60" valign="bottom" style="padding:0 0 15px 0;"><img src="../sub4/sub4_img/title_03.gif" alt="수강신청" width="132" height="33" /></td>
  </tr>
</table>
<table cellpadding="0" cellspacing="0" border="0" width="660">
  <tr>
    <td height="10"></td>
  </tr>
  <tr>
    <td><table cellpadding="0" cellspacing="0" border="0" width="100%">
        <tr>
          <td height="30" class="blog_index2">결제정보</td>
        </tr>
        <tr>
          <td><table cellpadding="5" cellspacing="0" border="0" width="100%" style="border:solid 1px #DDDDDD">
              <tr>
                <td class="orderIndex">총결제금액</td>
                <td><span style="text-align:center;border:none;font-size:14px;font-weight:bold;color:red">
                  <?=number_format($order_row[pay_amount])?>
                  원</span></td>
              </tr>
              <tr>
                <td colspan="2" height="1" bgcolor="#DDDDDD"></td>
              </tr>
              <tr>
                <td class="orderIndex">결제방법</td>
                <td><?=get_paymethod($order_row[pay_method])?>
                  &nbsp;&nbsp;&nbsp;
                  <?if($order_row[pay_method] == "bank"){?>
                  입금계좌 :
                  <?=str_replace("|","&nbsp;&nbsp;",$order_row[pay_info])?>
                  &nbsp;&nbsp;&nbsp;입금자명 :
                  <?=$order_row[pay_user]?>
                  <?}elseif($order_row[pay_method] == "iche"){?>
                  결제자명 :
                  <?=$order_row[pay_user]?>
                  &nbsp;&nbsp;&nbsp;주민번호 :
                  <?=$order_row[pay_pid]?>
                  <?}else{?>
                  결제자명 :
                  <?=$order_row[pay_user]?>
                  <?}?>
                </td>
              </tr>
            </table></td>
        </tr>
      </table></td>
  </tr>
  <tr>
    <td align="center" height="50"><button class="cart_btn1" onclick="order_step4();">결제하기</button>
&nbsp;
      <button class="cart_btn1" onclick="if(confirm('취소 하시겠습니까?')){location.href='order_cancel.php';}">취소</button></td>
  </tr>
</table>
<!-- 데이콤 결제 폼 -->
<form name="payForm" method="post" target="payFrame">
  <input type="hidden" name="shop_mode" value="<?= $shop_mode ?>">
  <input type="hidden" name="pay_method" value="<?= $order_row[pay_method] ?>">
  <input type="hidden" name="hashdata" value="<?= $hashdata ?>">
  <!-- 결제요청 검증(무결성) 필드-->
  <input type="hidden" name="mid" value="<?= $mid?>">
  <!-- 상점ID -->
  <input type="hidden" name="oid" value="<?= $oid?>">
  <!-- 주문번호 -->
  <input type="hidden" name="amount" value="<?=$order_row[pay_amount]?>">
  <!-- 결제금액 -->
  <input type="hidden" name="buyer" value="<?=$order_row[pay_user]?>">
  <!-- 구매자 -->
  <input type="hidden" name="pid" value="<?=$order_row[pay_pid]?>">
  <!-- 구매자 주민번호-->
  <input type="hidden" name="productinfo" value="<?=$order_row[o_subject]?>">
  <!-- 상품명 -->
  <input type="hidden" name="home_url" value="<?= $home_url?>">
  <!-- 팝업창 사용시 화면처리 URL (프레임 이용시 home_url 사용) -->
  <input type="hidden" name="note_url" value="<?= $note_url?>">
  <!-- 결제결과 DB처리 URL(웹전송연동방식일때 : 필수) -->
  <input type="hidden" name="fail_url" value="<?= $fail_url?>">
  <!-- 실패처리 URL(웹전송연동방식일때 : 필수) -->
  <input type="hidden" name="buyeremail" value="<?=$order_row[o_email]?>">
</form>
<?
}
else
{
echo("<script>alert('잘못된 접속입니다.');location.href='".$g4[path]."/shop/goods_list.php';</script>");
}
include("$g4[path]/_tail.php");

?>
강의를 신청하고 난 다음 주문내역을 보는것 같은데요.
이해가 잘 안됩니다
step3에서..... 디비 저장한것을 가져와야 하는것 같은데요...
아래부분이 왜 있는지 확실히 알지를 못하겠네요...
아래부분 대신

$CART = explode("/",$_SESSION["g4_cart"]);
$tmpField = explode("|",$CART[0]);
$tmpGcode = explode("OP",$tmpField[0]);

$goods = get_goods($tmpGcode[0]);
$category_info = get_category($goods[c_code]);
$g_option[0] = get_option($goods[g_option],$tmpGcode[1]);


요밑에 코드로 수정하고 해보시고..안되면...^^

<?
$order_goods_row = mysql_fetch_array(mysql_query("select * from g4_order_goods where oid='".$OID."' limit 1"));
$g_option = explode("|",$order_goods_row[g_option]);
?>
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

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