On this same topic, regarding no $_GET["tx"] but the existence of $_POST['CONTEXT']else if ((!isset ($_GET["tx"]) && (empty ($_POST) || $_POST["auth"] || $_POST['CONTEXT'])) || preg_match ("/ty-email/", $_GET["s2member_paypal_proxy_use"]))
We have this corrected in the development version, soon to be released in s2Member v3.5.3. Thanks for everyone's assistance on this topic. This line should actually just be:
- Code: Select all
else if (!isset ($_GET["tx"]))
Here is what is taking place in the bug fix.(s2Member). Bug fix. s2Member's Auto-Return/PDT handler was sometimes triggering the error `unable to verify POST vars` under special circumstances that are applicable with PayPal's Enchanced Recurring Billing service, and sometimes with Subscriptions that are paid for by credit card, instead of through a PayPal account; again related to PayPal's ERP add-on service. This has been resolved in s2Member v3.5.3+. In some special cases, PayPal® does not provide any data through PDT ( Payment Data Transfer ) and so s2Member must recover gracefully by asking the Customer to check their email. This does not affect s2Member's ability to process a Customer's transaction, but it does require s2Member's processing to take place entirely behind-the-scene via the IPN service, instead of immediately after checkout ( in a very few special cases ). This bug fix may or may not affect you, depending on what you're selling, and depending on whether you're using PayPal's ERP service or not.