mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Di 23.04.2024 10:24 Benutzername: Passwort: Auto-Login

Thema: [PHP] Ergebnisseite einer Suche über mehrere Seiten vom 26.08.2006


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> [PHP] Ergebnisseite einer Suche über mehrere Seiten
Seite: 1, 2  Weiter
Autor Nachricht
Sluggy
Threadersteller

Dabei seit: 11.02.2005
Ort: Dortmund
Alter: -
Geschlecht: Männlich
Verfasst Sa 26.08.2006 11:32
Titel

[PHP] Ergebnisseite einer Suche über mehrere Seiten

Antworten mit Zitat Zum Seitenanfang

Hallo!

Ich wollte mal nach der grundsätzlichen Technik fragen, wie man "überlange" Ergebnisseiten einer Suche am sinnvollsten auf mehrere Seiten verteilt.

Bisher habe ich über 3 Verfahren nachgedacht:

1. Die Suche (einzelne Suchwörter) in einem temporären Cookie speichern.
2. Die Suche im $_SESSION-Array speichern.
3. Ein Array mit den Ergebnissen füllen und folgend darauf zugreifen.

(Bei allen Verfahren also eine "neue" Suche mit einem anderen LIMIT)

Liege ich völlig falsch oder weiß ggf. jemand ein Standardverfahren.

Danke schon mal!
  View user's profile Private Nachricht senden
dastef

Dabei seit: 03.11.2003
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Sa 26.08.2006 11:42
Titel

Antworten mit Zitat Zum Seitenanfang

was spricht denn dagegen auf den einzelnen Seiten ein weiteres
Query mit nem Limit auszuführen?

die kompletten ergebnisse in nen array zu packen halte ich für
mutig .. das ist ja normalerweise doch nen ganz schöner brocken
  View user's profile Private Nachricht senden
Anzeige
Anzeige
svensen

Dabei seit: 25.08.2006
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Sa 26.08.2006 12:28
Titel

Antworten mit Zitat Zum Seitenanfang

Auf jeden fall jedes mal neuen Query verwenden mit entsprechender Anpassung des LIMIT Parameters.
Sessions sind für eine solche Anwendung nicht gedacht.
  View user's profile Private Nachricht senden
tacker

Dabei seit: 22.03.2002
Ort: Trondheim, Norwegen
Alter: 43
Geschlecht: Männlich
Verfasst Sa 26.08.2006 19:23
Titel

Antworten mit Zitat Zum Seitenanfang

Jedes mal das Such-Query erneut auszuführen kann auf die Performance gehen.
Es geht auch, das Suchergebnis in einer Tabelle zu speichern und
dann darüber zu iterieren.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Sluggy
Threadersteller

Dabei seit: 11.02.2005
Ort: Dortmund
Alter: -
Geschlecht: Männlich
Verfasst Mo 28.08.2006 14:01
Titel

Antworten mit Zitat Zum Seitenanfang

svensen hat geschrieben:
Auf jeden fall jedes mal neuen Query verwenden mit entsprechender Anpassung des LIMIT Parameters.
Sessions sind für eine solche Anwendung nicht gedacht.


Aber wo speicher ich die "alten" Werte für die neue Query?

Wenn ich die Seite noch mal lade, sind die Variablen, die zuvor mit $_POST von meinem Formular gefüllt worden sind, doch leer.

Ich habe jetzt soweit eine Blätterfunktion programmiert, aber das Suchwort ist beim erneuten Aufruf der Seite eben "verschwunden". * Keine Ahnung... *
  View user's profile Private Nachricht senden
svensen

Dabei seit: 25.08.2006
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Mo 28.08.2006 14:22
Titel

Antworten mit Zitat Zum Seitenanfang

das Suchwort bzw. alle sonstigen Suchparameter musst du natürlich entsprechend in deine Blätterfunktion
integrieren.

Beispiel, wenn du normale GET Links verwendest:

<a href="suchergebniss.php?deineBlätterparameter&deineSuchparameter">vor</a>

Wenn du POST verwendest musst du dementsprechend hidden Felder verwenden.

Dann geht auch nix verloren *zwinker*
  View user's profile Private Nachricht senden
blueX

Dabei seit: 13.07.2006
Ort: Lüchow
Alter: 42
Geschlecht: Männlich
Verfasst Di 29.08.2006 04:37
Titel

Antworten mit Zitat Zum Seitenanfang

ja ich würde auch sagen es ist ratsam jede weitere seite mit einer querry zu versehen . die pervormande dürfte dabei noch lange nicht so einbrechen wie als wenn man 500 such ergebnisse erst irgenwo speichern und anschiessen dwie löschne muss.... die querry wird ja nicht komlett ausgeführt .. es werden immer nur so viele datensätze aus der db geholt wie erlaubt sind. bei der ersten seite werden die ersten 20 geholt ... bei der 2. dann die nächsten 20 usw...... wenn du das ganze in ein array .. sei es nun ein cooki oder ne session, speicherst hat der server ziemlich zu ackern und der user kann sich erst ma n tässchen tee eingiessen ^^ zumal wozu hunderte von such ergebnissen speichern wenn dem user vieleicht schon eine der ersten ausreicht???? *zwinker*


mfg
blueX
  View user's profile Private Nachricht senden
tacker

Dabei seit: 22.03.2002
Ort: Trondheim, Norwegen
Alter: 43
Geschlecht: Männlich
Verfasst Di 29.08.2006 09:15
Titel

Antworten mit Zitat Zum Seitenanfang

Kommt auf die Art der Suche. Wenn Du in nur einer Tabelle suchst, ist
das immer neue Ausführen des Queries mit Limit schneller.
Nimmst Du aber mehrere Tabellen dazu sieht das schon anders aus.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
 
Ähnliche Themen .asp Seiten und der IIS7
Seiten verspringen im ff
Bullshit Seiten
No Frame- Seiten
PPT Seiten verändern
Benutzerspezifische Seiten
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.