【问题标题】:How can I use form_validation in CI3?如何在 CI3 中使用 form_validation?
【发布时间】:2020-02-19 06:01:51
【问题描述】:

我正在使用 CI 编写一个项目,但我对 form_validation 代码有疑问,我的教授给了我一种将规则放入带有数组的 form_validation 的方法,就像这样

$config = array (
  'jugador' =>array(
    array(
    'field' => 'correoJug',
    'label' => 'Correo',
    'rules' => 'trim|required|htmlspecialchars',
    ),
    array(
    'field' => 'nombreJug',
    'label' => 'Nombre',
    'rules' => 'trim|required|htmlspecialchars',
    ),
    array(
    'field' => 'tagJug',
    'label' => 'Tag',
    'rules' => 'trim|required|htmlspecialchars', 
    ),
    array(
    'field' => 'apellidosPatJug',
    'label' => 'Apellido paterno',
    'rules' => 'trim|required|htmlspecialchars',
    ),
    array(
    'field' => 'apellidosMatJug',
    'label' => 'Apellido materno',
    'rules' => 'trim|required|htmlspecialchars',
    ),
    array(
    'field' => 'password',
    'label' => 'Password',
    'rules' => 'trim|required|htmlspecialchars',
    )
  )
);

'jugador' 用于一个视图,我的疑问是下一个,我想将 form_validation 用于另一个视图,是否需要在我的另一个视图的末尾添加另一个数组,如下所示:

    array(
    'field' => 'apellidosMatJug',
    'label' => 'Apellido materno',
    'rules' => 'trim|required|htmlspecialchars',
    ),
    array(
    'field' => 'password',
    'label' => 'Password',
    'rules' => 'trim|required|htmlspecialchars',
    )
)
    'OG' =>array(
    array(
    'field' => 'correoOg',
    'label' => 'Correo',
    'rules' => 'trim|required|htmlspecialchars',
    ),
    array(
    'field' => 'password',
    'label' => 'Password',
    'rules' => 'trim|required|htmlspecialchars',
    )
 );

或者我需要在同一个文件中创建另一个变量,或者我只需要创建另一个 form_validation 文件。

我希望你明白我在说什么,并能帮助我

【问题讨论】:

    标签: php forms codeigniter validation


    【解决方案1】:

    您可以在单个文件中创建多个验证数组。

    $config = array(
      'first_validation' => array(
        'name' => 'trim|required',
        'password' => 'trim|required'
      ),
      'second_validation' => array(
        'phone' => 'trim|required',
        'email' => 'trim|required'
      )
    )
    

    控制器

    if ($this->form_validation->run('first_validation') == TRUE) {
       //success
    } else {
      // error
    }
    

    在另一个控制器中

    if ($this->form_validation->run('second_validation') == TRUE) {
       //success
    } else {
      //error
    }
    

    【讨论】:

      【解决方案2】:

      你必须创建另一个变量来设置这样的表单验证

      $config['form1'] = array(
                     array(
                           'field'   => 'username', 
                           'label'   => 'Username', 
                           'rules'   => 'required'
                        ),
                     array(
                           'field'   => 'password', 
                           'label'   => 'Password', 
                           'rules'   => 'required'
                        ),
                  );
      
      $config['form2'] = array(
                     array(
                           'field'   => 'email', 
                           'label'   => 'Email', 
                           'rules'   => 'required'
                        ),
                  );
      

      不如照常使用。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-09-13
        • 1970-01-01
        • 1970-01-01
        • 2021-04-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-09-30
        相关资源
        最近更新 更多