Codeigniter如何使用信用卡助手

时间:2017-02-10 14:51:49

标签: php forms codeigniter

我找到了一张信用卡验证器。但是,我不确定如何将它与回调一起使用。我想要使​​用的功能需要4个输入。但是我现在只能通过表单验证传递一个。希望有人能帮助我。

控制器

public function next(){
        $this->form_validation->set_error_delimiters('<p class="error">', '</p>');
        $this->form_validation->set_rules('inputcardtype','Select Card Type','required|callback_check_default');
        $this->form_validation->set_message('check_default', 'Please select the month of expiration');
        $this->form_validation->set_rules('inputcardnumber', 'Card Number', 'trim|required|xss_clean|callback_cardnumber_validation');
        $this->form_validation->set_rules('inputexpirationdatemonth','Select Month','required|callback_check_default');
        $this->form_validation->set_message('check_default', 'Please select the month of expiration');
        $this->form_validation->set_rules('inputexpirationdateyear','Select Year','required|callback_check_default');
        $this->form_validation->set_message('check_default', 'Please select the year of expiration');
        $this->form_validation->set_rules('inputnameoncard', 'Name on Card', 'trim|required|xss_clean');

        $inputcardnumber = $this->input->post('inputcardnumber');
        $inputcardtype = $this->input->post('inputcardtype');
        if($this->form_validation->run()==false){
            $this->index();
        }else{

        }

    }

    function cardnumber_validation($string = NULL) {
         $this->load->helper('creditcardvalidation'); 

         if(checkCreditCard ($string, $cardtype, $ccerror, $ccerrortext)) {
            return TRUE;
        } 
        else{
            $this->form_validation->set_message("cardnumber_validation", 'The %s is not valid.');
            return FALSE;
        }
    }

1 个答案:

答案 0 :(得分:0)

回调需要以函数命名。

如果你有:

callback_check_default

你需要一个名为:

的函数
    function check_default() {
     //Your validation here
  }

这会回答你的问题吗?