建站教程

建站教程

Products

当前位置:首页 > 建站教程 >

使用erphpdown的paypal付款后网站没有收到通知的解决办法

GG网络技术分享 2025-03-18 16:16 11


最近模板兔有个客户在使用erphpdown插件里面的paypal功能时遇到如上问题,排除了防火墙拦截的因素。我在查看网站日志时发现有一条回调请求是

/wp-content/plugins/erphpdown/payment/paypal.php?currencyCodeType=USD&paymentType=Sale&token=*******&PayerID=*****

从上面路径可以看出链接的&符号被服务器转义成了&导致网站没有获取到这个回调请求的参数,那么如何处理呢?

这种情况可能是服务器为了防止XSS攻击,自动htmlspecialchars进行转义了,如果我们不换服务器,那么只能通过PHP来处理下。部分处理部分的代码如下:

$ice_payapl_api_rmb = get_option('ice_payapl_api_rmb')?get_option('ice_payapl_api_rmb'):1;//汇率

if(isset($_REQUEST['currencyCodeType']) && !isset($_REQUEST['token'])){

$protocol = ((!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') || $_SERVER['SERVER_PORT'] == 443) ?"https://": "http://";

wp_redirect( str_replace('&','&',$protocol.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']) );

}

elseif(!isset($_REQUEST['token'])){

$epd_order = _epd_create_page_order('paypal');

...

标签:

提交需求或反馈

Demand feedback