تالار گفتمان nCIS.ir

نسخه‌ی کامل: درگاه پرداخت زرین پال
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلام خدمت اساتید گرامی
بنده از درگاه پرداخت زرین پال برای سایتم استفاده میکنم
مشکلی که دارم در تابع برگشت از درگاه پرداخت هست که مقدار amout رو باید به تابع برگشتی پاس بدم؟
    function PayCredit()
    {
       $this->load->library('zarinpal');
       $merchant_id = "654654-948789-123456";
       $Credit = $this->input->post("Credit");
       $desc = "افزایش اعتبار";
       $call_back = "https://site.com/UserPanel/verifyPayCredit";
       if($this->zarinpal->webgate($merchant_id , $Credit, $desc, $call_back)){
           $authority = $this->zarinpal->getAuthority();
           $this->zarinpal->redirect();
       }
       else{
           $error = $this->zarinpal->getError();
       }
       $this->verifyPayCredit($Credit);
   }


تا اینجا میره به درگاه پرداخت و اوکی هست

مشکل در بخش دوم کدهست که میخواد از درگاه پرداخت برگرده و مقدار credit رو میخواد
من باید به این صورت به این تابع مقدار credit رو ارسال کنم؟ 
        $this->verifyPayCredit($Credit);


تابع برگشتی:
function verifyPayCredit($Credit)
    {
       $this->load->library('zarinpal');
       $merchant_id = "654654-948789-123456";
       $amount = $Credit;
       $authority = $_GET['Authority'];
       $this->load->model('User_model');
       if($_GET['Status'] == 'OK'){
           if($this->zarinpal->verify($merchant_id , $amount, $authority)){
               $refid = $this->zarinpal->getRefId();
               //$data = array(.....);
               if($this->User_model->UpdateCredit($data))
               {
                   $this->load->view('UserPanel/Credit');
               }

           }
           else{
               $error = $this->zarinpal->getError();
               $this->load->view('UserPanel/Credit',$error);
           }
       }
       else{
           echo 'cancel';
       }
   }
از دوستان کسی هست بنده رو کمک کنه؟
مقدار amout رو موقع برگشت از درگاه پرداخت چطور باید بگیرم
عذرخواهی بابت اسپم
جواب کوتاه: نمیتونین.

جواب کامل: شما باید موقع فرستادن کاربر به سمت درگاه بانک، یک رکورد در دیتابیس خودتون در جدول تراکنش‌ها ایجاد کنید و ID اون رو بعنوان Order ID برای درگاه بفرستین و AU رو بگیرین. در برگشت از درگاه بانکی، به شما AU و Order ID اعلام میشه که از اونجا میتونین Amount رو با جستجوی رکورد مربوطه توی دیتابیس خودتون پیدا کنید.