Mailinglisten-Archive |
on 21.01.2001 19:28 Uhr, Thomas Bartz at thomas_(at)_cyainhell.de wrote: was hat man von folgender möglichkeit zu halten : ? erst eine ganz simple abfrage wie ("SELECT id FROM table" ); $max = mysql_num_rows; damit ist der gesammtwert ermittelt. Gibt es auch eine möglichkeit mit count... . vieleicht waere das auch besser. danach mache ich die eigentliche db - abfrage mit all den where abfragen und was weiss ich. diese dann MIT dem ausgabelimit : ... LIMIT $offset,10"); wenn jetzt die naechsten 10 treffer angezeigt wewrden sollen erhoehe ich $offset (um 10 ) und uebergebe diesen wert zusammen MIT dem maximalwert an den naechsten scriptaufruf. wird das script jetzt erneut ausgeführt, kontrolliere ich ob das maximum ($max) definiert ist und definiere es mit der oben genannten sql abfrage nur dann, wenn es eben noch nicht gesetzt ist. Resultat: Ab der zweiten Seite brauchen wirklich nur noch 10 ergebnisse ausgelesen werden. das ist die loesung die ich mir zurechtgelegt habe als ich auch ueber die performance solcher scripte nachdenken musste. ich habe allerdings nicht das hintergrundwissen ueber datenbanken sagen zu koennen, daß hier am wenigsten die performance beansprucht wird. das ist einfach nur verstand und gefuehl. waere schoen etwas von anderen dazu zu hoeren. viele gruesse miguel.
php::bar PHP Wiki - Listenarchive