Ho un modulo che ha funzionato perfettamente fino a quando ho passato il modulo a method="get"
. Ora non riesco a ottenere form_validation->run()
per valutare su TRUE.Come convalidare un campo modulo in Codeigniter quando si utilizzano i parametri Get?
Questo è come mi apre il modulo:
echo form_open('', array('method' => 'get'));
Questo è l'unico pezzo che ha bisogno di convalidare:
$this->form_validation->set_rules('states', 'states', 'required');
Questo è come mi controllare per vedere se il modulo viene convalidato:
if($this->form_validation->run() == FALSE)
C'è qualcos'altro che devo fare per usare i parametri Get? Ho attivato i parametri nella configurazione ($config['allow_get_array'] = TRUE;
). Il modulo funziona correttamente se ignoro la convalida, quindi so che il sistema di configurazione sta leggendo l'url fine.
Basta intervenire e fare la propria convalida richieste GET. XSS può essere gestito al livello più basso con htmlspecialchars (GET, ENT_QUOTES, 'encoding') a seconda dei dati emessi. La convalida del modulo è solo un aiuto. Elabora la struttura della tua app in anticipo, scopri cosa CI può offrire in relazione a helper/librerie e quindi plasma il tuo flusso di lavoro. – Philip
FYI ... La convalida del modulo di codifica di codice avrà esito negativo se sono presenti parametri GET nell'URI di una pagina che esegue la convalida del modulo sui parametri POST. –