Ich bin dabei, ein Eingabeformular auf einer datensatzspezifischen Seite zu erstellen, z. (Immobilien/Mieten/rec_id). Bei der Übermittlung sollten die Daten eingefügt, validiert und zur ursprünglichen Seite zurückkehren, von der sie mit allen relevanten Nachrichten gesendet wurde.Codeigniter Form Validation ... form re-population
- Wenn die Validierung fehlschlägt, laden Sie die Formularseite ein Formular
Echo der spezifische Validierung Fehler erneut bevöl-- z.B. ungültige E-Mail-Adresse usw.
Wenn dies gelingt, Einfügen von Daten, die Seite neu zu laden und Erfolgsmeldung angezeigt.
Funktionsklasse() {
$this->load->library('form_validation'); $this->form_validation->set_rules('name','name','required|trim'); $this->form_validation->set_rules('email','email','required|trim|valid_email'); $fields['name'] = 'Name'; $fields['email'] = 'Email Address'; $this->validation->set_fields($fields); if ($this->form_validation->run() == FALSE) { //failed - reload page and re-populate fields with any error messages } else { // display form with success message }
}
Normalerweise dies einfach durch 'Laden einer Ansicht' und Weitergabe der relevanten Daten erfolgt die Seite, Felder oder Display-Meldungen wieder zu bevölkern. Aber ich muss eine "Weiterleitung" zurück zur produktspezifischen Seite verwenden. Gibt es eine gute Möglichkeit, dies zu tun, außer Sitzungsdaten zu verwenden, um die Validierungsfehler zu tragen ..?
Vielen Dank im Voraus, Michael
Flashdata ist ein großartiger Vorschlag. Einfach zu bedienen, sauberer Code. http://codeigniter.com/user_guide/libraries/sessions.html – GloryFish