PHP Classes
elePHPant
Icontem

File: example.php

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of Herve FOUCHER  >  paypal_ipn  >  example.php  >  Download  
File: example.php
Role: Example script
Content type: text/plain
Description: Usefull for testing i_paypal.php
Class: paypal_ipn
Paypal payment notification processing
Author: By
Last change: Added set_proxy_options()
Date: 12 years ago
Size: 3,990 bytes
 

Contents

Class file image Download
<?php

function my_pre_processing ($ipn)
{
   
// Process IPN as soon as it is received from Paypal server
}

function
my_post_processing ($ipn, $status)
{
   
// Process IPN after the connection to the Paypal secured server
    // Depending of the status (INVALID or VERIFIED or false)
   
print_r($ipn);
}

if(
count($_POST)>0)
{
    include
"i_paypal.php";

   
$pp = new paypal_ipn ();

   
// If you need proxy support
    //$pp->set_proxy_options ("proxy:8080", "user:pwd");

    // Give function references
   
$pp->set_process_functions ("my_pre_processing", "my_post_processing");

   
// Pass the POST table to the Paypal processor
   
$pp->process_notification ($_POST, true);
}
else
{
   
// Use the form below to simulate a POST from Paypal server
    // Note : MD5 used below are real Paypal IDs
   
?>
<pre>
<form method="post" action="<?php echo $_SERVER["PHP_SELF"] ?>">
<input type="submit"><br>
receiver_email <input name="receiver_email" value="email@domain.com">
item_name <input name="item_name" value="Item Name">
item_number <input name="item_number" value="10010">
quantity <input name="quantity" value="1">
invoice <input name="invoice" value="<?php echo md5(microtime()) ?>">
custom <input name="custom" value="">
option_name1 <input name="option_name1" value="">
option_selection1 <input name="option_selection1" value="">
option_name2 <input name="option_name2" value="">
option_selection2 <input name="option_selection2" value="">
num_cart_items <input name="num_cart_items" value="">
payment_status <select name="payment_status"><option value="Completed">Completed</option><option value="Pending">Pending</option><option value="Failed">Failed</option><option value="Denied">Denied</option></select>
pending_reason <select name="pending_reason"><option value="echeck">echeck</option><option value="intl">intl</option><option value="verify">verify</option><option value="address">address</option><option value="upgrade">upgrade</option><option value="unilateral">unilateral</option><option value="other">other</option></select>
payment_date <input name="payment_date" value="<?php echo date("h:i:s M j, Y") ?>">
payment_gross <input name="payment_gross" value="100">
payment_fee <input name="payment_fee" value="5">
txn_id <input name="txn_id" value="<?php echo md5(microtime().rand(0,1000)) ?>">
txn_type <select name="txn_type"><option value="web_accept">web_accept</option><option value="cart">cart</option><option value="send_money">send_money</option></select>
first_name <input name="first_name" value="John">
last_name <input name="last_name" value="Smith">
address_street <input name="address_street" value="2, Hollywood Bld">
address_city <input name="address_city" value="Hollywood">
address_state <input name="address_state" value="California">
address_country <input name="address_country" value="USA">
address_status <select name="address_status"><option value="confirmed">confirmed</option><option value="unconfirmed">unconfirmed</option></select>
payer_email <input name="payer_email" value="payer_email@payer_domain.com">
payer_id <input name="payer_id" value="ID_123456">
payer_status <select name="payer_status"><option value="verified">verified</option><option value="unverified">unverified</option><option value="intl_verified">intl_verified</option></select>
payment_type <select name="payment_type"><option value="echeck">echeck</option><option value="instant">instant</option></select>
notify_version <input name="notify_version" value="1.3">
verify_sign <input name="verify_sign" value="<?php echo md5(rand(1,10000)) ?>">
mc_gross <input name="mc_gross" value="">
mc_fee <input name="mc_fee" value="">
mc_currency <input name="mc_currency" value="">
</form>
<pre>
    <?php
}

?>