首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PayPal Rest-API空白页

PayPal Rest-API空白页
EN

Stack Overflow用户
提问于 2015-04-23 16:28:12
回答 1查看 932关注 0票数 0

我遇到了PayPal的问题。

由于某些原因,它显示为空白页,并且只通过puTTY显示信息。我不知道怎么回事。

这是我的剧本:

代码语言:javascript
复制
<?php
require __DIR__ . '/PayPal-PHP-SDK/autoload.php';
use PayPal\Api\Amount;
use PayPal\Api\Details;
use PayPal\Api\Item;
use PayPal\Api\ItemList;
use PayPal\Api\Payer;
use PayPal\Api\Payment;
use PayPal\Api\RedirectUrls;
use PayPal\Api\Transaction;
use PayPal\Rest\ApiContext;
use PayPal\Auth\OAuthTokenCredential;

$api = new ApiContext(
    new OAuthTokenCredential(
        'yes it is correct',     // ClientID
        'correct '      // ClientSecret
    )
);
$api->setConfig([
'mode' => 'sandbox',
'http.ConnectionTimeOut' => 30,
'log.LogEnabled' => false,
'log.FileName' => '',
'log.LogLevel' => 'FINE',
'validation.level' => 'log'

]);


$payer = new Payer();
$payer->setPaymentMethod("paypal");



$item1 = new Item();
$item1->setName('Ground Coffee 40 oz')
    ->setCurrency('USD')
    ->setQuantity(1)
    ->setPrice(7.5);
$item2 = new Item();
$item2->setName('Granola bars')
    ->setCurrency('USD')
    ->setQuantity(5)
    ->setPrice(2);

$itemList = new ItemList();
$itemList->setItems(array($item1, $item2));



$details = new Details();
$details->setShipping(1.2)
    ->setTax(1.3)
    ->setSubtotal(17.50);

$amount = new Amount();
$amount->setCurrency("USD")
    ->setTotal(20)
    ->setDetails($details);

$transaction = new Transaction();
$transaction->setAmount($amount)
    ->setItemList($itemList)
    ->setDescription("Payment description")
    ->setInvoiceNumber(uniqid());




$redirectUrls = new RedirectUrls();
$redirectUrls->setReturnUrl("http://uplayeve.ml/PayPal/ExecutePayment.php?success=true")
    ->setCancelUrl("http://uplayeve.ml/PayPal//ExecutePayment.php?success=false");

$payment = new Payment();
$payment->setIntent("sale")
    ->setPayer($payer)
    ->setRedirectUrls($redirectUrls)
    ->setTransactions(array($transaction));

$request = clone $payment;


try {
    $payment->create($api);
} catch (Exception $ex) {
    echo 'Maybe an error or something';
    exit(1);
}

$approvalUrl = $payment->getApprovalLink();

ResultPrinter::printResult("Created Payment Using PayPal. Please visit the URL to Approve.", "Payment", "<a href='$approvalUrl' >$approvalUrl</a>", $request, $payment);

return $payment;
    ?>

下面也是我当前的phpinfo()http://uplayeve.ml/PayPal/phpinfo.php

EN

回答 1

Stack Overflow用户

发布于 2015-04-24 04:12:46

在PHP中,空白页面通常意味着有什么东西会抛出错误,但是您的报告没有启用。您可以通过在顶部添加这两行来轻松地启用这一功能。

代码语言:javascript
复制
error_reporting(E_ALL);
ini_set('display_errors', '1');

这可能会在现在打印错误。此外,有一些事情你应该注意。

  1. ResultPrinter是一个示例代码。请忽略这一点,并将其从代码中删除。这可能会导致错误。
  2. 如果出于任何原因,您希望捕获并读取适当的异常,请添加此catch方法,如下所示。 尝试{$Pay->create($api);} catch (\PayPal\Exception\PayPalConnectionException $ex) { echo $ex->getData();}

顺便说一句,我们正在http://paypal.github.io/PayPal-PHP-SDK/上添加越来越多的示例、wiki页面、源代码文档等,以使开发人员能够更快地与REST集成。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29829347

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档