Michael, I am having a problem here.. My friend/client site was completely lost.. the server he was on had a catastrophic failure with no chance at recovery.. I recreated his site on another server yesterday.. I had a huge issue with the register_globals, but finally found all the right fixes and he's back in business except for the payment.. The new host refuses to turn register_globals ON
Running osCMAX_RC3_0_2 -- mildly tweaked, on a UNIX box, php5.2.5, cPanel, sql 5.0.67-community
I've tried several paypal_ipn versions and while some work better than others, it's still not right..
At this point I have this version:
$Id: paypal_ipn.php,v 2.1.0.0 13/01/2007 16:30:28 Edith Karnitsch Exp $
Copyright (c) 2004 osCommerce
Released under the GNU General Public License
Original Authors: Harald Ponce de Leon, Mark Evans
Updates by PandA.nl, Navyhost, Zoeticlight, David, gravyface, AlexStudio, windfjf and Terra
and made this fix I found:
The payment is made, I am no longer getting the function apply_credit error when clicking returning to merchant from the paypal payment screen and am returned to the store, showing the order is completed. The items are no longer showing in the cart on the customer side. The customer gets the payment conf email which looks quite normal.Code:// if (tep_session_is_registered('cartID')) { // PandA.nl: register_globals fix if (array_key_exists('cartID', $_SESSION)) { $insert_order = false;
On the admin side, the order is there, the notation shows:
01/13/2009 18:20:42XPreparing [PayPal IPN]
so the response communication never happened after the payment was completed back to the store. The merchant used to get an Order Process mail, but now is getting 2 emails: Payment confirmation and Paypal IPN Invalid Process mail
The payment confirmation to the merchant shows the store name in the Item/Product Name: section - no order number anywhere that I can see and the order number is not in the Invalid Process mail either.
Here is the entire (edited) Invalid process mail
now I added another fix:Code:$_POST: mc_gross=22.90 protection_eligibility=Eligible address_status=confirmed payer_id=C72X8PUQR76GE tax=0.00 address_street=1843 Main Ave payment_date=18:21:05 Jan 13, 2009 PST payment_status=Completed charset=windows-1252 address_zip=11779 first_name=Debbie mc_fee=0.87 address_country_code=US address_name=Debbie's company name notify_version=2.6 custom=1683 payer_status=verified business=[merchant email address] address_country=United States address_city=[customer city] quantity=1 verify_sign=A--8MSCLabuvN8L.-MHjxC9uypBtA3mdzPP5lBYz7Y-cX865UIYZOiRe payer_email=[customer email] txn_id=01H51490G1625612Y payment_type=instant payer_business_name=Debbie's business name last_name=Debbie's last name address_state=NY receiver_email=[merchant email] payment_fee=0.87 receiver_id=TM59LCUS7T3YA txn_type=web_accept item_name=[Store name] mc_currency=USD item_number= residence_country=US handling_amount=0.00 transaction_subject=1683 payment_gross=22.90 shipping=0.00 $_GET:
and when I clicked confirm order, at the paypal screen I was told this order has already been paid -- oops thats right because we lost about 200 orders.. so I changed the setting temorarily in his paypal account and again I was successfully taken back to the cart with a sucessful paymentCode:Find in catalog/includes/modules/payment/paypal_ipn.php tep_session_register('cart_PayPal_IPN_ID'); // Terra register globals fix //$_SESSION['cart_PayPal_IPN_ID'] = $cartID . '-' . $insert_id; Replace with // FS start $GLOBALS['cart_PayPal_IPN_ID'] = $cartID . '-' . $insert_id; // FS stop tep_session_register('cart_PayPal_IPN_ID'); // FS start // Terra register globals fix //$_SESSION['cart_PayPal_IPN_ID'] = $cartID . '-' . $insert_id; // FS stop The problem : $cart_PayPal_IPN_ID was not always a global (e.g. between functions confirmation and process_button.
This time the cart had some communication:
01/13/2009 20:01:37XPendingPayPal IPN Invalid [Completed]
The merchant received again 2 emails, the payment mail which now shows both the order number and the store name yippee.. but still no order process mail.. again he received PayPal IPN Invlaid Process mail.. good thing is this also shows the order ID in it..
So where do I go with this now?? Find another host that either still runs an earier php version or one that will allow the register_globals ON ?? Or is ther yet another version or tweak I am missing here??





LinkBack URL
About LinkBacks









Bookmarks