ÿØÿà JFIF ÿÛ „ ( %"1"%)+...383,7(-.-
![]() Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20 System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64 User : apache ( 48) PHP Version : 7.4.20 Disable Function : NONE Directory : /var/www/html/thietkewebvumi.com/lib/ |
<?php /** * * Phiên bản: 0.1 * Tên lá»›p: NL_CheckOut * Chức năng: TÃch hợp thanh toán qua nganluong.vn cho các merchant site có đăng ký API * - Xây dá»±ng URL chuyển thông tin tá»›i Nganluong.vn để xá» lý việc thanh toán cho merchant site. * - Xác thá»±c tÃnh chÃnh xác của thông tin Ä‘Æ¡n hà ng được gá»i vá» từ nganluong.vn. * **/ class NL_Checkout { // URL chheckout của nganluong.vn private $nganluong_url = 'https://www.nganluong.vn/checkout.php'; // Mã merchante site private $merchant_site_code = '16221'; // Biến nà y được nganluong.vn cung cấp khi bạn đăng ký merchant site // Máºt khẩu bảo máºt private $secure_pass= 'okmua.net123258'; // Biến nà y được nganluong.vn cung cấp khi bạn đăng ký merchant site //Hà m xây dá»±ng url, trong đó có tham số mã hóa (còn gá»i là public key) public function buildCheckoutUrl($return_url, $receiver, $transaction_info, $order_code, $price) { // Mảng các tham số chuyển tá»›i nganluong.vn $arr_param = array( 'merchant_site_code'=> strval($this->merchant_site_code), 'return_url' => strtolower(urlencode($return_url)), 'receiver' => strval($receiver), 'transaction_info' => strval($transaction_info), 'order_code' => strval($order_code), 'price' => strval($price) ); $secure_code =''; $secure_code = implode(' ', $arr_param) . ' ' . $this->secure_pass; $arr_param['secure_code'] = md5($secure_code); /* BÆ°á»›c 2. Kiểm tra biến $redirect_url xem có '?' không, nếu không có thì bổ sung và o*/ $redirect_url = ''; $redirect_url = $this->nganluong_url; if (strpos($redirect_url, '?') === false) { $redirect_url .= '?'; } else if (substr($redirect_url, strlen($redirect_url)-1, 1) != '?' && strpos($redirect_url, '&') === false) { // Nếu biến $redirect_url có '?' nhÆ°ng không kết thúc bằng '?' và có chứa dấu '&' thì bổ sung và o cuối $redirect_url .= '&'; } /* BÆ°á»›c 3. tạo url*/ $url = ''; foreach ($arr_param as $key=>$value) { if ($url == '') $url .= $key . '=' . $value; else $url .= '&' . $key . '=' . $value; } return $redirect_url.$url; } /*Hà m thá»±c hiện xác minh tÃnh đúng đắn của các tham số trả vá» từ nganluong.vn*/ public function verifyPaymentUrl($transaction_info, $order_code, $price, $payment_id, $payment_type, $error_text, $secure_code) { // Tạo mã xác thá»±c từ chủ web $str = ''; $str .= ' ' . strval($transaction_info); $str .= ' ' . strval($order_code); $str .= ' ' . strval($price); $str .= ' ' . strval($payment_id); $str .= ' ' . strval($payment_type); $str .= ' ' . strval($error_text); $str .= ' ' . strval($this->merchant_site_code); $str .= ' ' . strval($this->secure_pass); // Mã hóa các tham số $verify_secure_code = ''; $verify_secure_code = md5($str); // Xác thá»±c mã của chủ web vá»›i mã trả vá» từ nganluong.vn if ($verify_secure_code === $secure_code) return true; return false; } } $NL_Checkout = new NL_Checkout; ?>