Codeigniter Paginierung URL mit Parameter erhalten
Ich habe Probleme beim einrichten der Seitenzählung, die auf codeigniter als ich die übergabe von Parametern in der URL
wenn meine url ist wie folgt : search/?type=groups
was sein sollte mein $config['base_url']
für den Seitenumbruch zu arbeiten?
wenn ich die Basis-url zu search/?type=groups
die resultierende url ist search/?type=groups/10
was bedeutet $_GET['type']=groups/10
danke
InformationsquelleAutor der Frage salmane | 2011-03-21
Du musst angemeldet sein, um einen Kommentar abzugeben.
In der Paginierung config:
Ihre aktuelle
$_GET
vars angezeigt werden in der Paginierung links.Sie können ersetzen
$_GET
durch ein weiteres assoziatives array.Dies wird nicht fügen Sie eine query-string-es sei denn, man ist bereits vorhanden.
Update:
Ich habe gerade gesehen, wenn Sie wieder von einer anderen Paginierung der Nummer, klicken Sie auf das erste(1), CI kümmert sich nicht mehr von Ihrem suffix config.
Zu beheben, verwenden Sie
$config['first_url']
.e.g:
$config['first_url'] = $config['base_url'].'?'.http_build_query($_GET);
InformationsquelleAutor der Antwort Aurel
Die meisten up-to-date die Antwort auf diese Frage ist;
Aktivieren Sie die reusage der query-string durch die Aktivierung dieser Konfiguration:
danach sollten Sie initialisieren die Seitenzählung:
InformationsquelleAutor der Antwort mertyildiran
wenn Sie mit codeigniter 2 gibt es eine option, in
config.php
$config['allow_get_array']
- stellen Sie sicher, Ihre auf TRUE.Dann legen Sie die Paginierung option
$config['page_query_string']
zuTRUE
.Und schließlich, in Ihrem Fall
$config['base_url']
zu"search/?type=groups"
die Paginierung wird anfügenper_page
query-string nach.Es sollte so funktionieren, erhalten Sie den offset in
$this->input->get("per_page")
.code stark!
InformationsquelleAutor der Antwort David Gyori
Hier ist meine jquery-Lösung:
Nur wickeln Paginierung links in einem div-so:
als fügen Sie den folgenden jquery-code:
Funktioniert gut für mich.
InformationsquelleAutor der Antwort King Julien
Kämpfte ich mit dem gleichen Problem heute. Meine Lösung ist diese:
Generierung der pagination-links und speichern Sie in einem string (
$pagination = $this->pagination->create_links();
)Verwenden Sie regexp zu finden, alle links und hinzufügen von query-strings
Den code für den regulären Ausdruck verwendet wird:
Funktioniert wie ein Charme für mich! Was es tut ist:
Dann weisen Sie einfach der variable in der Vorlage, die angezeigt wird, und verwenden print $your_pagination_variable_name; zu zeigen, die links mit Ihrer Suchanfrage-strings attached!
InformationsquelleAutor der Antwort Robban
Die Lösung ist, dass CodeIgniter funktioniert nicht so.
was ich brauche ist eine Methode ( in der Steuerung), die für jede der Optionen in der "Art"
so eine option wäre eine Methode namens :Gruppen , ein anderes namens-Einträge etc etc
jede Methode bezieht sich auf ein anderes Modell der Klasse oder Methode, wie gebraucht.
Ich versuche, besser zu verstehen, OOP und CI ...ein wenig Anpassung zu tun ... fühlen Sie sich frei zu äußern und mich korrigieren, wenn ich falsch bin.
danke
InformationsquelleAutor der Antwort salmane
Mithilfe der $config['suffix'] ist der IMO beste Weg, um dies zu implementieren, da es nicht erfordern keine zusätzliche Verarbeitung, wie die regex-Lösung. $config['suffix'] verwendet wird, in der die Darstellung der urls in der create_links-Funktion, die Teil des system/libraries/Pagination.php Datei, so dass, wenn Sie den Wert festlegen, es wird verwendet bei der Erzeugung der urls und nicht mehr zu verarbeiten, bedeutet, es werde schneller sein.
Danke für den Beitrag, das hat mich gerettet, Tonnen von extra, die nicht benötigt wird, codieren!
InformationsquelleAutor der Antwort Ryan Herubin
Ich denke, dass Sie versuchen, das gleiche zu tun, was ich versuche zu tun, und ich habe es, um korrekt zu arbeiten, indem nicht die Einstellung einer Basis-url und nur mit diesem setup-es hielt mich davon ab, die manuell zu Bearbeiten die Bibliothek
InformationsquelleAutor der Antwort William Smith
Vor der Linie:
Ersetzen Sie diesen code unter:
InformationsquelleAutor der Antwort Ken Phan
Nur sehen dieser link.
Aktualisieren Sie einfach die geänderte Paginierung Klasse und fügen Sie
InformationsquelleAutor der Antwort Nadeem As
Ich hab das gleiche problem. Meine Lösung ist die änderung der Paginierung und steckte es in application/libraries.
Zuerst erstelle ich
und finden Sie alle "a" Elemente hinzufügen $bekommen in der
href="........'.$this->get.'"'>.......</a>
Nun im controller oder Modell eingeben dieser Zeile
Das ist es! ich hoffe es wird Euch helfen.
InformationsquelleAutor der Antwort IT Advanture
IN IHREM CONTROLLER:
$config['anchor_class'] = "class='link-Paginierung'";
IHRER ANSICHT:
InformationsquelleAutor der Antwort Mek
Hatte das gleiche problem, aber gemerkt, dass neuere Versionen des CI-suffix definiert, innerhalb der Paginierung Klasse. Aber es ist immer noch nicht in der Dokumentation. Keine Notwendigkeit, es zu hacken.
InformationsquelleAutor der Antwort Serg Chernata
Dem ich begegnet bin, mit ähnlichen Art von problem, und basierend auf der Antwort zur vorherigen Frage hier ist, was ich zu tun habe für die Anpassung an meine Bedürfnisse.
Mein URI war so etwas wie dieses:
So, hier ist was ich getan habe:
InformationsquelleAutor der Antwort Md. Ahsan Ayub
Hoffen, Sie finden die Antwort dazu auf dieser Seite:
LINK. Bearbeiten Sie Ihre Antwort zurück, wenn Sie können.
InformationsquelleAutor der Antwort Patrick Beardmore