2012-06-04 7 views
5

Die Formularüberprüfungsbibliothek scheint nur für POST zu funktionieren. Ich brauche Abfragezeichenfolgen und möchte CI verwenden, um die übergebenen Werte zu validieren. Gibt es eine Möglichkeit, dies zu tun?CodeIgniter Validierung: möglich, GET Abfrage Zeichenfolgen zu validieren?

+0

Sie können CodeIgniter denken, dass es von POST war, obwohl es nicht war. '$ _POST = $ _GET', vielleicht? –

+1

lol, die ganze Klasse ist fest programmiert, um '$ _POST' zu verwenden. Also, wenn Sie es nicht vollständig überschreiben, dann nein. – Esailija

+0

mögliches Duplikat von [Wie validiere ich ein Formularfeld in Codeigniter, wenn ich Get-Parameter verwende?] (Http://stackoverflow.com/questions/10524992/how-do-i-validate-a-form-field-in-codeigniter) -wenn-using-get-Parameter) –

Antwort

10

The current Codeigniter 3.0 development branch bietet eine Option zum Einfügen einer eigenen Variablen anstelle von $ _POST. Sie könnten also 3.0 verwenden.

Alternativ dazu besteht die einzige Möglichkeit in CI2.1 darin, $ _POST = $ _ GET auszuführen, bevor Sie die Validierung ausführen.

+0

Könnten Sie bitte die "Option zum Einfügen Ihrer eigenen Variablen anstelle von $ _POST" angeben? Weil ich nach CI 3.0 migriere und alle meine form_validation mit Ausnahme eines gut funktionieren. Ich bekomme GET-Werte und möchte sie validieren ... Ich weiß nicht, wie es geht, danke! – Maxime

+1

Ich habe gerade herausgefunden, was das Problem war ... !!! In CI 3.0 fügen sie einen kleinen Haken hinzu. Gehe zu system/librairies/Form_validation.php. Suchen Sie die Funktion "set_rules" und löschen Sie die Zeile: if ($ this-> CI-> input-> method()! == 'post' && leer ($ this-> validation_data)) { \t \t \t zurückgeben $ this ; \t \t} – Maxime

+0

Ive versuchte _POST $ = $ GET aber die Validierungs-> run() gibt immer noch FALSE – Zorgarath

1

Sie könnten die Form_validation-Funktion, die in einer MY_Form_Validation ausgeführt wird, überschreiben und ändern.

Verwandte Themen