Mailinglisten-Archive |
Hi Sebastian, hi alle, Danke für Euer Hirn ... Ich antworte mal hier, um nicht 5 Mails produzieren zu müssen. Das Posting von Dir, Sebastian, hat nochmal ganz gut demonstriert, wie das aussehen soll (ich hoffe, das reicht Dir, Norbert, als Beispiel): > # | A | Ba | Ben | Ber | Bes | Bi | C | D ... Z Ich erklär's aber trotzdem nochmal ausführlicher: Inhaltlich geht es um ein Warenwirtschaftsystem (Intranet), das dann klassisch Kunden, Bestellungen, Artikel, Lieferanten etc. verwaltet und dabei möglichst gut bedienbar sein soll. Wenn nun jemand bspw. in einer Artikelliste nach Hersteller=BMW sucht, dann kann die Ergebnismenge ziemlich groß sein. Um abzuschätzen, welche Ergebnisse ein bestimmter Seitenlink zeigen wird, ist es wie in einem Lexikon sinnvoll, wenn der Link nicht "8" heißt, sondern eben "Bes". Da die Artikelnamen nicht gleichverteilt sind, ich aber eine feste Anzahl von Results pro Ausgabe-Seite haben möchte, benötige ich eine solche Abfrage. Vorschlag von Johannes: Schleife. Scheint mir, wie Du selber auch schreibst, aus Performancegründen auszuscheiden. Volker: having(mod(id,50)=0). Das ist schon die halbe Miete, gefällt mir. Allerdings ist es so, daß ich das Teil universell für recht verschiedene Abfragen, die natürlich über mehrere Tabellen gehen, erstellen möchte. Was ich also bräuchte, wäre ein SQL-Befehl, mit dem ich dem Resultset ein Feld mit einem fortlaufenden Zähler hinzufüge, auf den dann das having angewendet wird. Geht das? Sebastians Vorschlag dazu, was mit GROUP_CONCAT() zu machen, habe ich ehrlich gesagt nicht verstanden ... > denn für diese Navigation ist ja nicht relevant ob es jeder 50. oder > 100. ist, sondern wo sich etwas Ändern an dem Wort, oder? > also nicht: Ben (50.) Ben (100.) Ben (150.) Ber (200.) > sonder eher: Ben (50.) Ber (200.) Bes (350.) Also, ich wollte eigentlich schon genau jeden bspw. 50sten haben, und dann so viele Zeichen anzeigen, wie nötig sind, um einen Unterschied zu zeigen. Wenn dann keiner da ist, gibt es tatsächlich bspw: Filter | Filter | Filter | Schließlich geht es ja darum, bei jeder aufrufbaren Seite zu wissen, womit sie anfängt. > allerdings brauchst du eine zusätzliche Einzelseiten-Navigation > trotzdem, sonst müsstest du auf der Seite 'Ben' ja alle 'Ben's > anzeigen! > Das was du willst kann nur als Erweiterung dienen. Ich dachte mir das so: Ich bilde bis zu 30 Links ab, = 30 Seiten = bis zu 1.500 Datensätze. Wenn die Anzahl der Result-Datensätze größer 1.500 ist, wird das ganze zweistufig: Ich bilde wieder bis zu 30 Links ab, die in dann in 1.500er Sprüngen die Buchstaben anzeigen, ein Klick auf den Link bringt für diesen 1.500er Block die Links für die 30 Seiten mit je 50 Datensätzen. Und weil ich das ganze mit nem JS-Menü koppele (ups, jetzt sind wir wirklich OT), brauche ich nur einen Serveraufruf, um die Navi aufzubauen, dann kann der User mit einem Klick auf die Seite, die er braucht, springen. thx4help Tobias -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive