Codeigniter:, Wie die Umleitung ordnungsgemäß mit Formular-Validierung
Ich verstehen, wie es zu tun ist w/ein einfaches Formular w/o vorhandenen Werte, aber sagen wir mal ich habe eine Ansicht, die ich anrufen kann, die über http://domain.com/account/settings. sagen wir, ich habe zwei Felder, Benutzername, Passwort und die Stadt, die alle gezogen von der DB (außer Passwort natürlich). Also, wenn ein Benutzer versucht, das Formular zu senden und die Validierung schlägt fehl, warum auch immer, wo soll ich "redirect"? Jetzt habe ich es mit der gleichen Ansicht, aber das problem ist, er zieht die Infos aus der DB wieder. Sollte ich die Schaffung von zwei verschiedenen Ansichten?
Den zweiten Blick würde sich im wesentlichen zeigen die Informationen, die Sie geben versucht, entlang w/die Fehlermeldung.
InformationsquelleAutor luckytaxi | 2010-01-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Brauchen Sie nicht zwei separate Ansichten. Check-out Formular-Helfer Funktionen
set_value()
,set_select()
,set_checkbox()
undset_radio()
. Diese re-form füllen, nach deren Einreichung und Validierung. Also in deinem Fall, sollten Sie die Felder so:Standardmäßig ist der Eingang wird
$user['city']
Wert. Aber nach fehlgeschlagener Validierung wird es wieder aufgefüllt, mit den zuvor eingegebenen Werten (einschließlich falsch sind).Nur daran erinnern, dass alle Felder, die Sie möchten, neu füllen müssen Durchlaufen werden
form_validation
Bibliothek:InformationsquelleAutor Cinnamon
Auf dem gleichen controller haben, könnten Sie so etwas wie dieses:
Das ist alles dort ist zu ihm.
Die Idee ist, um es umzuleiten, um sich selbst oder wo immer Sie wollen, Wann die Validierung liefert 'true', so dass wir die Seite aktualisieren, damit die Seite aktualisiert werden.
Wenn die Validierung liefert 'false', dann werden Sie nicht haben, etwas zu tun.
InformationsquelleAutor Thorpe Obazee
Redirect auf die gleiche form.
Und aus Ihrer Sicht Fehler geben Informationen für die Besucher.
Gibt es zwei Möglichkeiten, wie Sie dies tun können.
Verwenden Sie diese Fehler in Ihrer Ansicht. Dies zeigt validation-error-info.
echo validation_errors('<p class="error">','</p>');
Oder verwenden Sie flashdata()
In Ihrem controller
Und in Ihrem Blick, die Sie brauchen, um es zu zeigen.
InformationsquelleAutor shin
Hatte das gleiche problem und entdeckt, dass eine Umleitung macht, verlieren Sie die Daten wurden zur Verfügung gestellt von form_error(...) oder validation_errors(), außer Sie speichern diese Daten in einer session oder in einem array übergeben werden, die in der geladenen Ansicht.
Den Punkt zu beachten ist, dass Sie sollte eine Weiterleitung nur dann, wenn die Daten, die Sie wollen, herum ist in Sitzung, sonst sollten Sie laden Sie einfach einen Blick. Letztere sorgt dafür, dass Sie Ihre Fehler bei der Validierung intakt, wenn Sie erreichen die Ansicht geladen.
InformationsquelleAutor Babatunde Adeyemi
Laden Sie einfach gleich anzeigen, wenn Formular-Validierung fehlgeschlagen
controller
Anzeigen Seite
Diese code-Anzeige-Formular-Fehler und neu Auffüllen, die form
InformationsquelleAutor shihabudheen