2017-02-26 2 views
1

Ich mag für mein Anmeldeformular -Code Fehler zeigen: Wenn Benutzer existieren Ich habe Massage kann nicht eine Fehlermeldung für den Zugriff auf Ihre Feldnamen entsprechenden Login_r (Regel)Formular Validierungsfehler Codeigniter

Pastebin. http://pastebin.com/5BfmPVeb

$config = array(
'login' => array(
    array(
     'field' => 'login', 
     'label' => 'Login', 
     'rules' => 'required' 
    ), 
    array(
    'field' => 'password', 
    'label' => 'Password', 
    'rules' => 'required' 
    ) 
), 
'register' => array(
    array(
    'field' => 'name_r', 
    'label' => 'Name', 
    'rules' => 'required|alpha' 
    ), 
    array(
    'field' => 'lastname_r', 
    'label' => 'Lastname', 
    'rules' => 'required|alpha' 
    ), 
    array(
    'field' => 'login_r', 
    'label' => 'Login_r', 
    'rules' => 'required|callback_rule' 
    ), 
    array(
    'field' => 'password_r', 
    'label' => 'Password_r', 
    'rules' => 'required|min_length[4]|max_length[12]' 
    ), 
    array(
    'field' => 'confirm_password_r', 
    'label' => 'Confirm_password', 
    'rules' => 'required|matches[password_r]' 
    ), 
    array(
    'field' => 'email_r', 
    'label' => 'Email', 
    'rules' => 'required|valid_email' 
    ), 
    array(
    'field' => 'adres_r', 
    'label' => 'Adres', 
    'rules' => 'required' 
    ) 
    ),       
); 

Modell:

public function register($data_db) { 

$this->db->where('login',$data_db['login']); 
$query = $this->db->get('users'); 
$row = $query->row(); 

if($row->login){ 
    $this->form_validation->set_message('rule', 'Error Message'); 
}else{ 
    $this->db->insert('users', $data_db); 
} 
+0

Sie Ihren Code hier setzen können, scheinen andere Leute – nogad

+0

zu verwalten I Ich habe Nachricht nicht Becouse kann wie: – Adi212

+0

und noch Tausende „Ihr Code falsch formatiert wird“ von anderen schaffen es jeden Tag. – nogad

Antwort

0

hinzufügen rule Funktion des Controllers meldet sich zu überprüfen:

function rule(){ 

    //... 

    $data_db['login'] = $this->input->post('login_r'); 

    $login = $this->db->where('login',$data_db['login'])->count_all_results('users'); 

    if($login){ 
     return TRUE; 
    }else{ 
     $this->form_validation->set_message('rule', 'Error Message'); 
    } 
    return FALSE; 
} 
+0

Ich weiß nicht, wie man es an meinen Code anhängen. Ich möchte überprüfen, ob der Benutzer vorhanden ist, bevor Daten an die Datenbank gesendet werden. Wie du in Model sehen kannst. Wenn es einen Benutzer mit demselben Login gibt, sollte er eine Nachricht anzeigen – Adi212

Verwandte Themen