如何解决PayPal IPN 间歇性地不从表单提交向 PayPal 发布购物车/信息
我遇到了一个奇怪的问题。这是非常断断续续的。它几乎与 iPhone 和 Safari 有关。而且,直到今天,我都无法复制它。每月可能会发生几笔交易。
问题是当客户单击 PayPal 按钮选项以通过 PayPal 付款时。这是使用 IPN 表单发布将购物车和交易信息发布到 PayPal。一个新窗口被打开,他们看到了 PayPal 的页面……就好像他们刚刚输入了 URL。没有订单等信息
正如我所提到的,这是非常不一致和断断续续的。 99% 的用户会看到交易总额,他们可以结帐等。如果我收到有关此问题的电子邮件,我会要求他们尝试不同的浏览器、chrome 等,并且通常可以正常工作。似乎它通常是 iPhone 和 Safari 浏览器。有时用旧手机。有时使用新手机等。
这与来自 PayPal 的交易回传信息无关,而是与将购物车信息发布到 PayPal 相关。
这是带有此信息的 HTML/PHP 代码。
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_blank">
<?
$count = 1;
$session->setValue('sInvoice',strtoupper(substr(md5(uniqid(rand(),1)),8)));
for($val = 0; $val < sizeof($Cart); $val++){
$productID = $Cart[$val]['ProductID'];
$productTitle = $Cart[$val]['ProductLineDescription'];
$productPrice = $Cart[$val]['UnitPrice'];
$quantity = $Cart[$val]['Quantity'];
$calcPrice = $Cart[$val]['LineItemPrice'];
$shipping = number_format($session->getValue("ShippingTotal"),2,'.',',');
?>
<input type="hidden" name="item_name_<?=$count?>" value="<?=specialchars($productTitle)?>" />
<input type="hidden" name="amount_<?=$count?>" value='<?=number_format($productPrice,')?>' />
<input type="hidden" name="quantity_<?=$count?>" value="<?=$quantity?>" />
<input type='hidden' name='item_number_<?=$count?>' value='' />
<?
$count++;
}
?>
<input type="hidden" name="shipping_1" value='<?=$shipping?>' />
<input type="hidden" name="no_shipping" value="2" />
<input type="image" id="PayPalButton" src="https://www.paypalobjects.com/webstatic/en_US/i/buttons/checkout-logo-large.png" name="submit" class="wp_cart_checkout_button" alt="Make payments with PayPal - it's fast,free and secure!" />
<input type="hidden" name="return" value="https://www.example.com/thankyou/" />
<input type="hidden" name="notify_url" value="https://www.example.com/paypal/" />
<input type="hidden" name="business" value="paypal@example.com" />
<input type="hidden" name="currency_code" value="USD" />
<input type="hidden" name="cmd" value="_cart" />
<input type="hidden" name="upload" value="1" />
<input type="hidden" name="rm" value="2" />
<input type="hidden" name="charset" value="utf-8" />
<input type="hidden" name="mrb" value="3FWGC6LFTMTUG" />
<input type="hidden" name="custom" value="cid=<?=$xCartID?>" />
</form>
当用户遇到问题时,我会注意到他们购物车中的商品和属性,并尝试我的方法,但始终无法重现该问题。点击 PayPal 按钮的行为与预期一致。
有什么想法吗? TIA
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。