0

一致機能が実行されない理由がわかりません。ユーザーにパスワードを入力してもらい、もう一度入力して確認します。問題は、両方のパスワードを比較するために一致関数を使用すると、Codeigniter が、両方の等しい値を導入した後にパスワードが等しくないことを示すことです。

コードは次のとおりです。

public function validacion_registro() 
{
    $this->input->post('correo');
    $this->input->post('usuario');
    $this->input->post('contrasenya');

    $this->form_validation->set_rules('correo','Dirección de correo','trim|required|valid_email|xss_clean');
    $this->form_validation->set_rules('usuario','Nombre de usuario','trim|required|min_length[5]|xss_clean');
    $this->form_validation->set_rules('contrasenya','Contraseña','trim|required|md5|xss_clean|matches[repcontrasenya]');
    $this->form_validation->set_rules('repcontrasenya','Confirmación de contraseña','trim|required|md5|xss_clean');
    $this->form_validation->set_rules('privacidad','Política de privacidad','trim|required|md5|xss_clean');

    if ($this->form_validation->run())
     {
        redirect('anuncios/test');
        echo ("validación válida");
     }
    else {
            $this->load->view('anuncios/login');
         }  
}

エラーは、contrasenya と repcontrasenya の比較にあります。両方が等しい場合、Codigniter は異なることを示します。

どうしたの?

ありがとう。

4

1 に答える 1

0

コマンド: $this->form_validation->run() は、エラーがなければ true を返します。

コードを次のように変更します。

if ($this->form_validation->run() == FALSE)
{
    redirect('anuncios/test');
    echo ("validación válida");
}
else 
{
    $this->load->view('anuncios/login');
}
于 2013-01-13T20:41:28.530 に答える