×

Welcome to TagMyCode

Please login or create account to add a snippet.
0
0
 
0
Language: PHP
Posted by: Ilmsg July
Added: Jun 3, 2013 3:05 AM
Modified: Jun 3, 2013 3:06 AM
Views: 81
Tags: paypal
php paypal
  1. // เช็คข้อมูลการชำระเงินจาก email
  2.         // ipn message จากระบบของ paypal
  3.         public function callback(){                            
  4.                 // read the IPN msg from PayPal and add 'cmd' for your verification request
  5.                 $req = 'cmd=_notify-validate';
  6.                
  7.                 // append the IPN msg, in NVP format, to your verification request
  8.                 foreach ($_POST as $key => $value) {
  9.                         $value = urlencode(stripslashes($value));
  10.                         $req .= "&$key=$value";
  11.                 }
  12.                
  13.                 // set up the headers for your verification request
  14.                 // POST your verification requests to PayPal (here, the Sandbox)
  15.                 $header  = "POST /cgi-bin/webscr HTTP/1.0\r\n";
  16.                 $header .= "Host: www.sandbox.paypal.com:443\r\n";
  17.                
  18.                 // $header .= "Host: ipnpb.paypal.com:443\r\n";      // endpoint for Live apps
  19.                
  20.                 $header .= "Content-Type: application/x-www-form-urlencoded\r\n";
  21.                 $header .= "Content-Length: " . strlen($req) . "\r\n\r\n";
  22.                
  23.                 // open the socket
  24.                 $fp = fsockopen ('ssl://www.sandbox.paypal.com', 443, $errno, $errstr, 30);
  25.                
  26.                 // for live applications, use:
  27.                 // $fp = fsockopen ('ssl://ipnpb.paypal.com', 443, $errno, $errstr, 30);
  28.                
  29.                 $ipn_response = '';
  30.                 if (!$fp) {
  31.                         // HTTP error
  32.                         echo "HTTP socket error! Unable to open URL";
  33.                 } else {
  34.                         // POST verification request
  35.                         fputs ($fp, $header . $req);
  36.                         while(!feof($fp)) {
  37.                                 $ipn_response .= fgets($fp, 1024);
  38.                         }
  39.                        
  40.                         if( preg_match("/VERIFIED/", $ipn_response) ){
  41.                                 $msg = "ok";
  42.                                 $custom = isset($_POST['custom']) ? $_POST['custom'] : '';
  43.                                 // ยืนยันออเดอร์ ชำระเงินผ่านทาง paypal
  44.                                 // $this->order_model->confirm_order( $order_id );
  45.                         }else{
  46.                                 $msg = "not ok";
  47.                         }
  48.                 }
  49.         }

1 comment

Hello,

this code is working fine?
I am looking for a sample code to use in with recording the datas in a MYSQL database.

thanks.

Elson

Write a comment