2013-05-21 55 views
0

我想在結帳時添加新的session['abc']第5步:付款方式(1.5.5.1)。新會話opencart結帳

什麼我迄今所做的:

/template/checkout/payment_method.tpl添加

<input type="hidden" name="abc" value="1111" id="abc"> 

/template/checkout/checkout.tpl

data: $('#payment-method input[type=\'radio\']:checked, #payment-method input[type=\'checkbox\']:checked, #payment-method textarea'), 

改爲

data: $('#payment-method input[type=\'radio\']:checked, #payment-method input[type=\'checkbox\']:checked, #payment-method textarea, #payment-method input[type=\'hidden\']'), 

/controller/checkou/payment_method.php

$this->session->data['payment_method'] = $this->session->data['payment_methods'][$this->request->post['payment_method']]; 

加入

$this->session->data['abc'] = strip_tags($this->request->post['abc']); 

和錯誤消息是

SyntaxError: JSON.parse: unexpected character 

OK 

<b>Notice</b>: Undefined index: salutation in <b>D:\phpnow\PHPnow-1.5.6\htdocs\1\catalog\controller\checkout\payment_method.php</b> on line <b>190</b>[] 
+0

payment_method.php文件中的第190行是什麼?並在$('#button-payment-method')。live('click',function()()之後嘗試console.log($('#payment-method input [type = \'hidden \'])。 ){line來查看提交的數據 – Ula

回答

0

歡迎的StackOverflow

在控制器的代碼(/controller/checkou/payment_method.php)你可能有地方這樣的代碼:

echo 'OK'; 

print('OK'); 

die('OK'); 

自帶之前的JSON輸出。另外,某些數組中的索引salutation未定義(不存在),因此您應該首先測試其是否存在,例如,這種方式:

if(isset($some_array['salutation'])) { /* Your code then */ } 

if(!empty($some_array['salutation'])) { /* Your code then */ } 

卸下echo 'OK';和測試數組的索引應該解決這個問題。