简体   繁体   中英

ipn listener paypal

I am working on simple shopping cart, one problem is driving my crazy IPN listener is not working

When I make a payment I get redirected back to the thank you page and those values are printed out.

thankyou.php those posts down below printed out and there are lots of posts variables as well .

[address_status] => confirmed

[payment_status] => Completed

[payer_status] => verified

The problem is with my IPN listener is not working.

<input type="hidden" name="notify_url" value="http://mysqlphp.uphero.com/paypal_ipn.php">

This is the script on my paypal_ipn.php down below:

// Check to see there are posted variables coming into the script

    if ($_SERVER['REQUEST_METHOD'] != "POST") 
    die ("No Post Variables"); ------> 

// Initialize the $req variable and add CMD key value pair

    $req = 'cmd=_notify-validate';
    // Read the post from PayPal
    foreach ($_POST as $key => $value) {
        $value = urlencode(stripslashes($value));
        $req .= "&$key=$value";
    }

    $url = "https://www.sandbox.paypal.com/cgi-bin/webscr";

    $curl_result=$curl_err='';

    $ch = curl_init();

    curl_setopt($ch, CURLOPT_URL,$url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $req);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/x-www-form-urlencoded", "Content-Length: " . strlen($req)));
    curl_setopt($ch, CURLOPT_HEADER , 0);   
    curl_setopt($ch, CURLOPT_VERBOSE, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_TIMEOUT, 30);
    $curl_result = @curl_exec($ch);
    $curl_err = curl_error($ch);
    curl_close($ch);

    $req = str_replace("&", "\n", $req); 

// Check that the result verifies and sending email before doing anything i just wanted to make sure that this script is working but i don't receive an email

    if (strpos($curl_result, "VERIFIED") !== false) {
        $req .= "\n\nPaypal Verified OK";
        mail("eagleeyes26@hotmail.com", "IPN interaction verified", "$req", "eagleeyes26@hotmail.com" );


}

I found this solution

http://microlabs.altervista.org/paypal-ipn-listener/

and work fine, feature automated email with attached download purchase, site in italian language but you can translate in footer

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM