UPDATE
Si desidera inviare un modulo, convalidarlo, poi mostrare nuovamente il modulo con la convalida errori se la validazione fallisce, o mostra qualcosa di completamente diverso se la validazione passa.
Il modo migliore per farlo è postare un modulo su se stesso. Quindi l'azione del tuo modulo sarebbe action=""
. In questo modo, nel metodo, è possibile controllare per vedere se è stata presentata la forma, e determinare che cosa fare c'è:
// in my form method
if ($this->input->post('submit')) // make sure your submit button has a value of submit
{
// the form was submitted, so validate it
if ($this->form_validation->run() == FALSE)
{
$this->load->view('myform');
}
else
{
$this->load->view('formsuccess');
}
}
else
{
// the form wasn't submitted, so we need to see the form
$this->load->view('myform');
}
risposta Old
Si può sempre passare la corrente URI in una nascosta campo nella forma:
<input name="redirect" type="hidden" value="<?= $this->uri->uri_string() ?>" />
E poi reindirizzare se la convalida non riesce:
redirect($this->input->post('redirect'));
Oppure si può impostare l'URL di reindirizzamento in una variabile di sessione flashdata:
// in the method that displays the form
$this->session->set_flashdata('redirect', $this->uri->uri_string());
E quindi reindirizzare se la convalida non riesce:
redirect($this->session->flashdata('redirect'));
Grazie per la risposta. I primi due dei tuoi codici che hai pubblicato funzionano perfettamente accettando la visualizzazione degli errori di validazione. Quindi stavo cercando di usare il secondo dei tuoi codici che hai postato ma dato che ho pochissime conoscenze su PHP/codeigniter, non sono sicuro di dove utilizzarli. Dovrei incollare questa "$ this-> session-> set_flashdata ('redirect', $ this-> uri-> uri_string());" sul controller che ho postato sopra o nel modulo di cui ho parlato? Grazie ancora :) Ci scusiamo per la mia stupida domanda. :( –
In entrambi i casi, non riceverai gli errori di convalida a meno che tu non li superi. Aggiornerò la mia risposta per riflettere che hai bisogno di errori di validazione visualizzati – swatkins