2012-07-05 47 views
1

我對codeigniter的第一個問題。我已經使用貝寶庫在codeigniter中集成了paypal。一切工作正常,但當我回到成功頁面,然後它給了我「發生錯誤:您執行的操作無效」。但同樣的成功頁面可以直接從網址(我的意思是當我直接在瀏覽器中)訪問。貝寶成功的網址不工作:Codeigniter

控制器

function form() 
{ 
$this->paypal_lib->add_field('business', '[email protected]'); 
$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"; 

成功頁面是直接寫給訪問並打印 「成功」,但是當我從貝寶返回,它給了我 「的出錯」

在apache log.getting 500 572.我不太確定我是什麼反映。

謝謝

+0

您是否正確配置了CodeIgniter中的API密鑰和PayPal界面上的IPN/Return URI? – 2012-07-05 10:10:43

+0

我很抱歉UGO,但我不知道API keys。我只是下載了paypal庫,然後根據我的成功/取消/ ipn更改了參數。請更新我應該在哪裏改變。 – 2012-07-05 10:14:49

+0

您正在處理付款API,您將需要完成一些工作!閱讀您下載的庫文檔和Paypal API文檔。 – 2012-07-05 10:17:20

回答

0

打開您網站的主配置文件並檢查您的CSRF設置。我曾經有過類似的問題,並且通過禁用CSRF保護來解決問題。

$config['csrf_protection'] = FALSE; 

這有什麼區別嗎?

+0

你是完全正確的蒂姆。我已經整理出來了,我正在回答自己。 :) :)但後來我發現,你已經回答了這個問題。 – 2012-07-06 06:44:34

+0

很高興聽到它。 :) – Scully 2012-07-06 23:37:47

0

$ config ['csrf_protection'] = FALSE; 確實在這種情況下,雖然你不應該把它關閉, 所以在這種情況下:

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

也會伎倆。