Utilisation de callback

zainebggrissa Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -  
Pitet Messages postés 2826 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour a tous ,

j'utilise le framework codeigniter et quand je clique sur le bouton,il apparaît une page blanche avec <<page web inaccessible>>

voici mon code
$this->load->library('form_validation');
$this->form_validation->set_rules('email','e-mail', 'trim|required|valid_email');

$this->form_validation->set_rules('mdp','mot de passe','trim|required|min_length[4]|max_length[52]|alpha_dash|encode_php_tags|xss_clean|callback_existe_dans_bd['.$this->input->post('email').']');


if($this->form_validation->run() == TRUE )
{
$this->load->view('bienvenue');
}
else
{
// Le formulaire est invalide ou vide
$this->load->view('application');
}
}

//fonction qui versifie l'existence  des valeurs email et password dans la base de données 
public function existe_dans_bd ($str, $email) 
{
$this->load->database();
$this->load->model('Clients_model','clientsmodel');
$resultat = $this->clientsmodel->liste_clients_connexion($mail,$str);
if($resultat){
	return true;
}else{
    $this->form_validation->set_message( 'existe_dans_bd', 'utilisateur inexistant' );
	return false;
}
}


Remarque; quand je change l'entête de la fonction par "public function callback_existe_dans_bd ($str, $email) ", la vue bienvenue apparait quand je clique sur le bouton

pouvez-vous m'aidez ?
merci et j'attends votre réponse

1 réponse

Pitet Messages postés 2826 Date d'inscription   Statut Membre Dernière intervention   527
 
Salut,

Ton problème me parait pourtant simple, tu donnes toi même la solution.

Soit tu appelle ta fonction "existe_dans_bd" et dans la validation de ton formulaire (ligne 4) tu utilises cette fonction :
$this->form_validation->set_rules('mdp','mot de passe','trim|required|min_length[4]|max_length[52]|alpha_dash|encode_php_tags|xss_clean|existe_dans_bd['.$this->input->post('email').']');

Soit tu appelle ta fonction "callback_existe_dans_bd" et tu l'utilises dans la validation de ton formulaire comme c'est le cas actuellement :
$this->form_validation->set_rules('mdp','mot de passe','trim|required|min_length[4]|max_length[52]|alpha_dash|encode_php_tags|xss_clean|callback_existe_dans_bd['.$this->input->post('email').']');

Tu peut donner le nom que tu veux à ta fonction, du moment que tu utilises le même nom lorsque tu veux y faire appel.

Bonne journée,
0