2016-12-01 6 views
1

Für eine gefilterte Liste Webseite möchte ich Pass-Filter in der URI-Zeichenfolge. D.h .:Filterform für URI-String-Parameter

index.php/user/search/name/joe/location/UK/gender/male 

Nach CodeIgniter Dokumentation wird es leicht sein, die Informationen unter Verwendung der URI-Klasse abzurufen. http://www.codeigniter.com/user_guide/libraries/uri.html?highlight=uri%20class

Meine Zweifel:

In der Ansicht, Wie soll ich die Filter bilden so einrichten, dass es eine uri String basierte URL (index.php/user/search/name/joe/Lage/UK ruft/gender/männlich) statt einer normalen POST (oder GET) Anfrage?

Antwort

0

Statt es wie zu tun, dass Sie Ihre Abfrage wie folgt strukturieren,

index.php/user/search?name=joe&location=UK&gender=male

diese Weise können Sie die URL-Parameter $data = $this->input->get() zugreifen können und dann einzelne Elemente zugreifen wie $data['name'], $data['location'] and $data['gender']. Und es wäre auch einfacher, das Formular mit get Methode einzurichten.

+0

Danke für Ihren Vorschlag @Sayantan Das. Ich weiß, dass ich eine regelmäßige Abfragezeichenfolge verwenden kann, um Formularwerte zu übertragen. Aber mein Ziel ist es, herauszufinden, ob es möglich ist (und nicht absurd komplex), Formularwerte in die uri-Zeichenkette zu übertragen. – MarcM

+0

In diesem Fall können Sie auf die Parameter zugreifen, indem Sie '$ this-> uri-> segment (segment_no)' verwenden. Dabei steht 'segment_no' für die Position des Parameters in der uri. zum Beispiel ist die Position von 'joe' 2. –

+0

Mein Zweifel geht nicht darum, wie man auf die Parameter zugreift, sondern über 'Wie man das Formular aufruft, um eine URL-String-basierte URL aufzurufen' – MarcM

Verwandte Themen