【问题标题】:Codeigniter Form Validation based on the optional value using config file基于使用配置文件的可选值的 Codeigniter 表单验证
【发布时间】:2015-03-24 11:39:09
【问题描述】:

我正在使用在配置文件夹中创建的 form_validation 文件进行 CodeIgniter 表单验证

例如:

$config = array(
    'signupBasic' => array(
        array(
            'field' => 'title',
            'label' => 'Title',
            'rules' => 'required'
        ),
        array(
            'field' => 'firstName',
            'label' => 'First Name',
            'rules' => 'required'
        ),
         array(
            'field' => 'companyName',
            'label' => 'Company Name',
            'rules' => 'required'
        ),
        array(
            'field' => 'addMoreOfficer',
            'label' => 'Add More Officers',
            'rules' => 'callback_addmore_check'
        ),
    )
);

问题是我有一些字段只有在选中复选框时才能验证如何使用 $config 数组方法来实现这一点

【问题讨论】:

  • 您需要将复选框值传递给验证才能知道其他字段需要进行验证。
  • 完全正确,但是如何将该值传递给配置文件夹示例中的 form_validation 文件会有所帮助

标签: php codeigniter validation


【解决方案1】:
public function checkbox()
{
    $data = array(
        'name'        => 'newsletter',
        'id'          => 'newsletter',
        'value'       => 'accept',
        'checked'     => FALSE,
        'style'       => 'margin:10px',
        );

    echo form_open('test/passingthrough');
    echo form_checkbox($data);
    echo form_submit('mysubmit', 'Submit CheckBox!');
}

public function passingthrough()
{
    $this->form_validation->set_rules('mysubmit', '', 'required');

    if ($this->form_validation->run() == FALSE) {
        redirect('test/checkbox', 'refresh');
    } else {
        echo '<pre>', var_dump($this->input->post('newsletter'));
    }
}

在您的环境中测试此代码。我认为您可以为以下代码设置有关 $this-&gt;input-&gt;post('newsletter') 值的条件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-16
    • 2015-03-27
    • 1970-01-01
    相关资源
    最近更新 更多