Wie kann ich Code-Igniter-URI-Segmente für mehrere Variablen?
Ich Schreibe eine app, die ermöglicht es Ihnen, filter, Datenbank-Ergebnisse, basierend auf Standort und Kategorie.
Wenn jemand war auf der Suche nach Liverpool unter den Golf-Kategorie der URI wäre /index.php/search/Liverpool/Golf
.
Sollte jemand wollen, Suche durch die Lage, aber nicht Kategorie, Sie würden gesendet werden, um /index.php/search/Liverpool
Sollte dennoch jemand so filtern möchten, dass nur durch die Kategorie Sie wäre nicht in der Lage zu verwenden /index.php/search/Golf
denn das wäre gefangen von der location-Suche.
Gibt es eine best-practice-Weg, um /index.php/search/Golf
anerkannt werden? Einige best-practice, was anderes zu fügen, um den URI zu machen, diese zwei Fragen eindeutig? /index.php/search/category/Golf
vielleicht?
Obwohl, die ist Anfang zu zeigen, Merkmale von /index.php?search&category=Golf
das ist genau das, was ich versuche zu vermeiden.
- Scheint, wie
/index.php/search/category/Golf
ist gut genug. Es ist wie tags
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wäre es wohl am besten sein, halten Sie Ihre URI-Segmente relavent egal, was Sie suchen.
Wenn Sie nicht interessiert sind, an einem Ort übergeben Sie dann einen Füller, um das system:
Dann in Ihrem code, den Sie nur überprüfen, dass bestimmte Zeichenfolge ÜBERALL, um zu bestimmen, wenn Sie nur wollen, um zu sehen, die Aktivität. Ich gehe davon aus, dass Sie gehen zu sein, dass Sie diese entweder mit links oder Foren (und das sind Sie nicht, die Eingabe der URI-string selbst), so dass Sie sollten sicher sein, in der nur die Weitergabe von Informationen, die Sie erwarten und die Tests gegen die.
index.php/search/All/All/Golf
Versuchen Sie es mit $this->uri->uri_to_assoc(n)
die hier beschriebenen http://codeigniter.com/user_guide/libraries/uri.html (auf halbem Weg nach unten auf der Seite)
im Grunde werden Sie die Struktur Ihrer url wie folgt:
BEACHTEN Sie: die Parameter sind optional, so dass Sie nicht haben, um sowohl in die ganze Zeit dort. Sie können genauso gut tun
diese Weise wird auch FALSE zurück, wenn das element, das Sie suchen, nicht vorhanden ist
Verwende ich das format vorgeschlagen, das von Tom oben und dann tun Sie etwas entlang der Linien von unten, um festzustellen, den Wert der Parameter.
Haben Sie einen Blick auf http://lucenebook.com/#/p:solr/s:wiki und klicken Sie auf um ein bisschen auf der linken navigation. Achten Sie genau auf, was passiert, in der url, wenn Sie tun. Ich mag dieses Schema für viele Gründe.
Natürlich, der trick ist wirklich in den code, wie du die Sache. Es dauerte ein paar Wochen, um es zu lösen, aber ich habe endlich meine eigene version der Website. Nur nicht-ajax-basierte, weil ich wie search engines besser als ajax. Ajax nicht die Rechnungen bezahlen.