关于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 log..getting 500 572.我不太清楚它反映了什么。
由于
答案 0 :(得分:0)
打开站点的主配置文件并检查CSRF设置。我有一次类似的问题,它通过禁用CSRF保护解决了。
$config['csrf_protection'] = FALSE;
这有什么不同吗?
答案 1 :(得分:0)
$ config [' csrf_protection'] = FALSE; 在那种情况下蠢事,虽然你不应该把它关掉, 那么在那种情况下:
$ config [' csrf_protection'] = TRUE; 和 $ config [' csrf_exclude_uris'] =数组(' controller / success_function');
也会做到这一点。