Bonjour,
J'ai une question toute simple mais je ne parviens pas a trouver une solution qui me convient...

Quel est la meilleure solution pour vider mes variables de formulaires après la validation?
Je reviens sur la page "contact", et les "set_value('ma_var')" affichent ce que le visiteur a entré...

Une fois le mail envoyé (c'est bien le cas) j'aimerai simplement pouvoir vider les champs...

Merci d'avance

2 réponses


balo
Réponse acceptée

Lorsque le formulaire est validé, tu peux faire assigner une session flashdata puis faire une redirection vers la page de ton formulaire. Comme ça tes champs seront vidés, l'utilisateur pourra actualiser sa page sans renvoyer le formulaire et tu pourras afficher un message grâce au flashdata.
La fonction de ton controller serait un peu comme ça :

public function form() {
    if ($this->form_validation->run()) {
    $this->session->set_flashdata('accept', "Le formulaire a bien été envoyé");
        redirect('form');
    }
    $this->load->view('myform');
}

D'accord avec Balo, sinon tu peux toujours essayer un unset , mais personnellement je n'en ai jamais eu l'utilité dans ce genre de cas sous CI