0

我目前正在开发一个小型购物车,其中付款选项cash on delivery和其他使用payment gateway. 现在我的购物车的流程图就像

  1. 下订单,输入地址
  2. 选择付款方式(货到付款或预付)
  3. 如果 COD 确认订单
  4. 如果预付费,重定向到支付网关页面

因此,当客户选择一个选项时,控制器功能会handlePayment()检查它是否为CODPrepaid。如果COD它显示一个视图页面,或者如果它的prepaid,它应该重定向到支付网关,其中包含所有必要的数据POST

那么我将如何完成这项任务呢?

4

3 回答 3

1

你必须写 if COD then $this->view->load('pagename); 否则你必须调用另一个函数 $this->functionname($_POST);

于 2013-07-29T06:19:37.413 回答
0

不同的角度——你能先问他们货到付款或预付的问题吗? 然后使每个“路径”完全分开。从长远来看,这对您的应用程序可能会更好,尤其是在它增长的情况下。如果您可以在预付轨道上进行更严格的表单验证(例如,如果某些信息被用作信用卡验证的一部分)与亲自付款的 COD 相比,可能会有所帮助

于 2013-07-29T20:41:35.283 回答
0

试试这个,它是你需要什么的粗略假设:

function handlePayment(){
    if($this->input->post('type') == "COD"){
        $data   = array();
        $data   = $this->input->post(null);
        $this->load->view('cod', $data);
    }else if($this->input->post('type') == "prepaid"){
        $data   = array();
        $data   = $this->input->post(null);
        $this->prepaidPayment($data);  
    }
}

function prepaidPayment($data){
    //do something with the data which contains all the post variables
}
于 2013-07-29T06:32:39.720 回答