MySQL und PHP: Such resultat auf mehrere seiten darstellen



  • ich grüsse euch

    kann mir jemand erklären wie man ein suchergebnis einer mysql anfrage die durch php geact wurde, auf mehreren seiten dann darstellt? also das mit "Nächste seite", "Zurück" und die nummern darstellung "Seite: 1, 2, 3, 4 etc."

    ich weis zwar wie ich ein suchresultat auf eine seite kriege, mit tabelle etc. aber wie ich das ergebniss von 1000 anfragen auf 10 seiten (also 100 zeilen pro seite) kriege ist mir nicht ganz klar. als parameter kann man dem php script sicherlich sowas wie ?site=2 geben, aber wo und wie merke/speichere ich die restlichen 800 resultate 😕



  • Gar nicht, Du speicherst die anderen 800 Resultate überhaupt nicht. Sonst wäre ja auch ein Blättern in der DB unmöglich, stell Dir vor, Du hättest 100000 Datensätze, kannst aber nur 40 pro Seite anzeigen, dann müßtest Du ja 99960 zwischenspeichern! Ein GAU für Speicher und Performance. Deswegen nutzt man ja Datenbanken, um nicht auf Clientseite speichern zu müssen.

    Die Lösung ist, daß Du die Suchanfrage an die DB modifizierst. Das SQL-Schlüsselwort "LIMIT" ist Dein Freund.

    Du holst Dir damit nur einen Ausschnitt aus der Tabelle, also etwa so:

    SELECT * FROM bla LIMIT (AktuelleSeite-1)*DSproSeite, DSproSeite
    


  • hallo marcus 🙂

    vielen dank damit klappt es bestens 🕶


Anmelden zum Antworten