Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 未呈现贝宝支付墙-错误“;无效的批准URL“;_Javascript_Php_Laravel_Paypal_Paypal Rest Sdk - Fatal编程技术网

Javascript 未呈现贝宝支付墙-错误“;无效的批准URL“;

Javascript 未呈现贝宝支付墙-错误“;无效的批准URL“;,javascript,php,laravel,paypal,paypal-rest-sdk,Javascript,Php,Laravel,Paypal,Paypal Rest Sdk,我正在我们的网站上集成PayPal环境。我们正在使用Github上提供的当前版本的PayPal PHP SDK(1.7.4)。我们在IIS10上使用PHP7.0.7 首先,我们按照《集成指南》中的说明创建付款。我们收到付款的有效批准url(格式: .). 我在浏览器中手动检查了url 付款在控制器中创建并提供给视图 控制器: function showPaymentWall() { $payment = $this->createPayment(); return

我正在我们的网站上集成
PayPal
环境。我们正在使用Github上提供的当前版本的
PayPal PHP SDK
(1.7.4)。我们在
IIS
10上使用
PHP
7.0.7

首先,我们按照《集成指南》中的说明创建付款。我们收到付款的有效批准url(格式: .). 我在浏览器中手动检查了url

付款在控制器中创建并提供给视图

控制器:

    function showPaymentWall() {
    $payment = $this->createPayment();
    return view("payments.paypal.paymentWall",['payment'=>$payment, 'approval_url'=> $this->approvalUrl]);
}
在方法
createPayment
中设置
approval\u url

以下是视图中的代码:

@extends('layouts.master')
@section('title')
Upgrade
@endsection
@section('content')
<div class="container">
    <div class="row">
        <div class="form-group col-xs-12 col-sm-12 col-md-12 col-lg-12">
            <div>{{ $approval_url }}</div>
            <div id="ppplus"></div>
        </div>
    </div>

</div>
@endsection

@section('scriptIndividualJSCode')
<script src="https://www.paypalobjects.com/webstatic/ppplus/ppplus.min.js" type="text/javascript"></script>
<script type="application/javascript">
     var ppp = PAYPAL.apps.PPP({
        "approvalUrl": "{{ $approval_url }}",
        "placeholder": "ppplus",
        "mode": "sandbox",
        "country": "DE"
     });
</script>
@endsection
@extends('layouts.master'))
@章节(“标题”)
升级
@端部
@节(“内容”)
{{$approval\u url}
@端部
@节(“scriptIndividualJSCode”)
var ppp=PAYPAL.apps.ppp({
“approvalUrl”:“{{$approval\u url}}”,
“占位符”:“ppplus”,
“模式”:“沙盒”,
“国家”:“德”
});
@端部
如您所见,有效的url显示在ppplus容器之前。因此,很明显,该url是有效的,并且由控制器正确给出。 但是当我访问页面时,我总是会遇到以下错误:

当我通过控制台检查原因时,它会显示“无效的批准url”

有人知道为什么或者我可以检查什么来前进吗?
提前感谢您的帮助

我找了很久才找到原因

结果是,
&必须替换为
&
。 然后它成功了。这可以通过
PHP
函数
htmlspecialchars\u decode()
完成(请参阅)。以下是我为
javascript
部分编写的代码:

<script type="application/javascript">
             var ppp = PAYPAL.apps.PPP({
                "approvalUrl": "<?php echo htmlspecialchars_decode($approval_url); ?>",
                "placeholder": "ppplus",
                "mode": "sandbox",
                "country": "DE",
                "language": "de_DE"
             });
</script>

var ppp=PAYPAL.apps.ppp({
“批准”:“批准”,
“占位符”:“ppplus”,
“模式”:“沙盒”,
“国家”:“德”,
“语言”:“德鲁德”
});

谢谢你的提示,节省了我很多时间。如果有人使用
Symfony
Twig
,可以使用以下命令以正确的格式插入
URL
:{{approval\u URL | raw}