【问题标题】:Paypal Sucess Url Not Working : Codeigniter贝宝成功网址不起作用:Codeigniter
【发布时间】:2012-07-05 09:15:03
【问题描述】:

我关于 codeigniter 的第一个问题。我已经使用 paypal 库在 codeigniter 中集成了 paypal。一切正常,但是当我返回成功页面时,它给了我“发生错误:您执行的操作无效”。但是同样的成功页面可以直接从 url 访问(我的意思是当我把它直接放在浏览器中时)。

控制器

function form()
{
$this->paypal_lib->add_field('business', 'xxxxxxx@ymail.com');
$this->paypal_lib->add_field('return', site_url('checkout/paypal/success'));
$this->paypal_lib->add_field('cancel_return', site_url('checkout/paypal/cancel'));
$this->paypal_lib->add_field('notify_url', site_url('checkout/paypal/ipn')); 
$this->paypal_lib->
add_field($this->security->csrf_token_name,   $this->security->csrf_hash); 
}
function success()
{
  echo "success";
}   

路线

$route['checkout/paypal'] = 'checkout/paypal/index';
$route['checkout/paypal/(:any)'] = "checkout/paypal/$1";

成功页面可以直接访问并打印“成功”,但是当我从 paypal 返回时,它给了我“发生错误”

在 apache 日志中..getting 500 572。我不太确定它反映了什么。

谢谢

【问题讨论】:

  • 你在 CodeIgniter 中正确配置了你的 API 密钥和在 paypal 界面上的 IPN/Return URI 吗?
  • 对不起UGO,但我不知道API密钥。我只是下载了paypal库,然后根据我的成功/取消/ipn更改了参数。请更新我需要更改的地方。
  • 您正在处理一个支付 API,您将有一些工作要做!阅读您下载的库的文档和 Paypal API 文档。
  • 我确信在 API 的安装/配置中没有任何剩余。我在我的测试沙盒帐户中成功获得了 IPN。唯一的问题是从 Paypal 返回后加载成功页面。

标签: php codeigniter paypal


【解决方案1】:

打开您网站的主配置文件并检查您的 CSRF 设置。我曾经遇到过类似的问题,通过禁用 CSRF 保护解决了。

$config['csrf_protection'] = FALSE;

这有什么不同吗?

【讨论】:

  • 你是绝对正确的蒂姆。我已经整理好了,我要自己回答了。 :) :) 但后来我发现,你已经回答了这个问题。
【解决方案2】:
$config['csrf_protection'] = FALSE;

上面的代码在这种情况下会起作用,虽然你不应该把它关掉, 所以在这种情况下:

$config['csrf_protection'] = TRUE;

$config['csrf_exclude_uris'] = array('controller/success_function');

也可以解决问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-04
    • 2012-02-09
    • 2017-08-21
    • 2011-05-24
    • 1970-01-01
    • 2013-07-12
    相关资源
    最近更新 更多