Ich habe ein Formular, das perfekt funktioniert, bis ich das Formular in method="get"
umgestellt habe. Jetzt kann ich form_validation->run()
nicht auf TRUE auswerten.
So öffne ich das Formular:
%Vor%Dies ist das einzige Stück, das validiert werden muss:
%Vor%So überprüfe ich, ob das Formular validiert ist:
%Vor% Gibt es noch etwas anderes, was ich tun muss, um die Get-Parameter zu verwenden? Ich habe Parameter in der Config aktiviert ( $config['allow_get_array'] = TRUE;
). Das Formular funktioniert in Ordnung, wenn ich die Validierung überspringe, also weiß ich, dass das CI-System die URL richtig liest.
Dieser Beitrag im Codeigniter-Forum schlägt vor, dass die Formularvalidierung nicht mit Get-Parametern funktioniert und das ist nur so so wie Codigniter ist.
Codeigniter hat sich seit einigen dieser Posts geändert. Ich denke, die Antwort von gX ist richtig.
Die Anweisungen im Benutzerhandbuch, speziell im Abschnitt Validieren einer Array (außer $ POST) , funktionierte großartig für mich (ab heute) und es ist sehr einfach.
Vor der Zeile $ this- & gt; form_validation- & gt; set_rules geben Sie das Array an, das validiert werden soll:
%Vor%Wie Sie in der Datei Form_validation.php sehen können, haben sie $ _POST überall in der Klasse fest programmiert; - (
Wenn Sie auch $ _GET unterstützen möchten, ist es ziemlich einfach (und dreckig Oooo), Sie können eine neue Eigenschaft erstellen:
%Vor%Und ersetzen Sie $ _POST durch $ this- & gt; inputData überall in dieser Klasse, da es keine statischen Methoden gibt.
Ich weiß, dass es nicht anfängt, Herstellerdateien zu bearbeiten, aber wirklich, Sie brauchen es, tun Sie es; -)
Ich habe versucht, genau etwas Ähnliches zu tun, aber es läuft auf die Struktur Ihres Codes hinaus.
Ich hoffe, es hilft.
Tags und Links forms validation codeigniter post get