Mailinglisten-Archive |
DAS AACHEN-FORUM schrieb:
Du hast aber einen merkwürdigen Namen. Also, lieber DAS AACHEN-FORUM:
> Mein Problem ist es, eine Liste, die ich aus einer MySQL Datenbank bekomme
> in x Schritten zu generieren.
>
> Ich gehe dabei so vor:
>
> Ich definiere die Variabeln...
>
> if(isset($pos)==0)
Du willst sagen:
if(!isset($pos))
oder?
> $pos=0;
[...]
> $count=2;
Nach der Einrückung schließe ich, daß Du auch dieses nur dann machen möchtest,
wenn $pos ungesetzt ist. Dann mußt Du { und } benutzen. Oder Du rückst falsch
ein.
> und gebe das Ergebnis aus:
>
> mysql_query("SELECT soso,blabla FROM datenbank ORDER BY xyid LIMIT
> $pos,$count");
>
> Ich vermute aber den Fehler hier:
>
> <?php
> if ($pos>0):
> ?>
> <A HREF="show.php3?pos=<?php echo $pos-$count;?>">zurück</A>
> <?php
> endif;
Das verstehe ich. Wenn davor noch Werte sind, soll man die sehen können.
> if(mysql_num_rows($an_id)>=$pos):
Was ist $an_id? Naja, wird wohl ein Handle sein... ;-)
Aber die if-Abfrage verstehe ich nicht: mysql_num_rows() liefert nach meinem
Dafürhalten maximal $count, nämlich die Anzahl der Ergebnisse. Was hat das mit
der Startposition zu tun?
> ?>
> <A HREF="show.php3?pos=<?php echo $pos+$count;?>">vor</A>
> <?php
> endif;
> ?>
>
> Problem:
> Wenn ich zweier Schritte einsetze, bekomme ich in der Liste nur bis zu 6
> Einträgen angezeigt;
Naja:
2 >= 0: wahr
2 >= 2: wahr
2 >= 4: falsch
> setze ich $count= auf 3, bekomme ich nur bis zu 9 Einträgen angezeigt;
Und:
3 >= 0: wahr
3 >= 3: wahr
3 >= 6: unwahr
> danach fehlt der Link "vor".
Korrekt. Einmal 2+2+2 = 6 Ergebnisse, einmal 3+3+3 = 9 Ergebnisse.
> Die Vorlage für das Script ist aus dem Buch PHP vom Markt und Technik
> Verlag. Bei beiliegender CD-ROM funktioniert das Beispiel auch nicht.
Kann IMHO auch nicht.
> Peinlich oder?
Ja? ;-)
Oliver
--
Oliver Fink
NetUSE AG, Siemenswall, D-24107 Kiel, Germany
Fon: +49 431 386435 00 -- Fax: +49 431 386435 99
php::bar PHP Wiki - Listenarchive