زمان جاری: 2012/05/25, 05:55 PM خوش آمدید مهمان گرامی! (ورودعضویت)



کامپوننت پرداخت آنلاین بانک ملت


ارسال موضوع  ارسال پاسخ 
  • 1 رای - 5 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
رتبه موضوع:
 
کامپوننت پرداخت آنلاین بانک ملت
نویسنده پیام
cybercoder غایب
Expired
**

ارسال‌ها: 115
تاریخ عضویت: Dec 2009
رتبه: 1
تشکر: 51
86 بار تشکر شده در 48 پست
ارسال: #1
Lightbulb کامپوننت پرداخت آنلاین بانک ملت
کد PHP:
<?php
/*
    Mellat Iranian Bank payment component for cakePHP version 0.1 Beta 1. ;
    Rememeber that you need nusop libraries and copy them in to Vendors folder of your cakePHP Application. ;
    Written by Vahid Alimohamadi ;
    http://cybercoder.ir ;
    It is Free to use and develop by anyone. ;
*/
?>

<script language="javascript" type="text/javascript">    
        function postRefId (refIdValue) {
            var form = document.createElement("form");
            form.setAttribute("method", "POST");
            form.setAttribute("action", "https://pgw.bpm.bankmellat.ir/pgwchannel/startpay.mellat");         
            form.setAttribute("target", "formresult");
            var hiddenField = document.createElement("input");              
            hiddenField.setAttribute("name", "RefId");
            hiddenField.setAttribute("value", refIdValue);
            form.appendChild(hiddenField);

            document.body.appendChild(form);         
            form.submit();
            document.body.removeChild(form);
            
        }
</script>
<?php
    App
::import('Vendor','nusoap');
    
    Class 
MellatPaymentComponent extends object {
        function 
startup(&$controller)
        {
            
$this->controller $controller;
        }
        private function 
getResRef($amount=0){
            
$orderID =rand();
            
$date =  date("Ymd");
            
$time =  date("His");
            
$parameters = array(
                
'terminalId' => 'the_terminal_id_that_obtained_from_bank',
                
'userName' => 'the_username_that_obtained_from_bank',
                
'userPassword' => 'the_password_for_the_username',
                
'orderId' => $orderID,
                
'amount' => $amount,
                
'localDate' => $date,
                
'localTime' => $time,
                
'additionalData' =>  '',
                
'callBackUrl' => 'http://your_payment_address',
                
'payerId' => "0"
            
);
            
$client = new nusoap_client('https://pgws.bpm.bankmellat.ir/pgwchannel/services/pgw?wsdl');
            
$namespace='http://interfaces.core.sw.bps.com/';
            
            return 
$client->call('bpPayRequest'$parameters$namespace );
        }
        public function 
paymentRequest($amount=0) {
            
$ResRef=$this->getResRef($amount) ;

            
$ResRef=explode(',',$ResRef) ;
            
            
$ResCode=$ResRef[0] ;
            
settype($ResCode,"string");
            if (!empty(
$ResRef[1])) {
                
$RefId=$ResRef[1] ;
                
settype($RefId,"string") ;
            }
            
/* if $ResCode variable contains a non-zero number then You can Map error numbers to Messages yourself */
            
if (isset($RefId)) echo "<script language='javascript' type='text/javascript'>postRefId('" $RefId "');</script>";
        }
    }
?>

موفق باشید.
2011/12/12 03:35 AM
یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در پاسخ
 تشکر شده توسط : mohsened 786ali saleh sibetorsh
786ali آفلاین
عضو نیمه حرفه ای
**

ارسال‌ها: 137
تاریخ عضویت: Jul 2011
رتبه: 2
تشکر: 199
81 بار تشکر شده در 43 پست
ارسال: #2
RE: کامپوننت پرداخت آنلاین بانک ملت
با تشکر ، دوست عزیز کمی توضیح هم بدید ما تازه کاریم Smile
2011/12/14 09:58 AM
یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در پاسخ
ارسال موضوع  ارسال پاسخ 


پرش در انجمن: