Blätterfunktion zum Navigieren

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Blätterfunktion zum Navigieren

    Möchte in ein Gästebuch eine Blätterfunktion einbauen um die Seite etwas übersichtlich zu halten.

    Also einen Link für seite vor und zurück ist kein Problem.
    Alle Seitenzahlen zwischen den beiden Links einzufügen ist auch kein Problem..

    Würde gerne die Seitenzahlen begrenzen, sagen wir mal akutelle Seite + - 5 Seiten vor und zurück.

    Habe leider nichts mit der SuFu gefunden, was diese Limitierung betrifft.

    Wie realisiert man denn so etwas am besten, gibt es irgendwo ein Tutorial oder ähnliches dafür.

  • #2
    Was ist denn schon schwer dabei? Du hast deine aktuelle Seite, dann einfach +-5 dazu, die Grenzfälle noch berücksichtigen und fertig. Zeige mal dein Ansatz, dann kann man weiter diskutieren.

    Kommentar


    • #3
      Re: Blätterfunktion zum Navigieren

      Original geschrieben von blumi
      Wie realisiert man denn so etwas am besten,
      Mit einer Schleife vielleicht ...?
      gibt es irgendwo ein Tutorial oder ähnliches dafür.
      Nein, es gibt* Hirn - das darf ruhig erst mal benutzt werden bevor für solche Kinkerlitzchen nach "Tutorials" geschrien wird.



      * sollte geben
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        Übergib an dein Blätterscript eine $_GET Var mit der gewünschten Seitennummer. Da dein Script ja weiss/wissen sollte wieviele Bilder pro Seite angezeigt werden, kann es, basierend auf der gewünschten Seite, auch ausrechnen welches das erste Bild für die geforderte Seite ist. Dieses Bild + die Anzahl Bilder pro Seite - 1 werden dann an den Client geschickt.

        Gruss

        tobi
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Kommentar


        • #5
          Ja ich weiß, dass man erst sein Hirn benutzen soll.

          Habe mir das ganze Gästebuch, naja fast das ganze auch aus dem Hirn gezogen.
          Jetzt häng ich halt grad an der Stelle. Vielleicht sehe ich ja auch vor lauter Bäumen den Wald nicht mehr.

          Also hier mal der Code:
          In der For Schleife die if Bedingung ist wahrscheinlich das was ich im moment nicht blicke.

          PHP-Code:

          if ($AnzahlSeiten 1)
          {
          $AktuelleSeite $offset $EintraegeProSeite;
          echo 
          "Aktuelle Seite: $AktuelleSeite <br>";
              
          if (
          $offset 0)
          {
          $OffsetZureuck $offset $EintraegeProSeite;
          if (
          $OffsetZureuck >= 0)
          {
          echo 
          "<a href=\"./index.php?wohin=$WohinScript&offset=$OffsetZureuck\">
          Vorherige Seite</a>&nbsp;&nbsp;&nbsp;"
          ;
          }
          }
                  
          for (
          $i=0$i $AnzahlSeiten$i++)

          #if (($AktuelleSeite-5 < $i) && ($AktuelleSeite+5 > $i))
          if (($AktuelleSeite == $AktuelleSeite+5) && ($AktuelleSeite $AktuelleSeite-5))                
          {
          $tmp_offset_page $i $EintraegeProSeite;
          $AktuelleSeite $i 1;
          #echo "x Aktuelle Seite: $AktuelleSeite <br>";
          if ($AktuelleSeite == $i)
          {
          echo 
          "<b>$AktuelleSeite</b>&nbsp;";
          }   
          else
          {
          echo 
          "<a href=\"./index.php?wohin=$WohinScript&offset=$tmp_offset\">
          $AktuelleSeite</a>&nbsp;";
          }
          }
          }
                  
          $OffsetVor $offset $EintraegeProSeite;
          if (
          $OffsetVor $AlleEinträge)
          {
          echo 
          "&nbsp;&nbsp;<a href=\"./index.php?wohin=$WohinScript&offset=$OffsetVor\">
          Nächste Seite</a>"
          ;
          }    

          Zuletzt geändert von blumi; 11.06.2007, 14:35.

          Kommentar


          • #6
            PHP-Code:
            $akt 72// aktuelle Seitenzahl
            $gesamt 317// Gesamtanzahl Seiten
            $anzahl 5// wie viele vorherige/nächste sollen angezeigt werden

            for($i max(1$akt-$anzahl), $stop min($akt+$anzahl$gesamt); $i<=$stop$i++) {
                if(
            $i == $akt)
                  echo 
            '-'.$i.'- '// aktuelle Seite, nicht verlinken
                
            else
                  echo 
            '['.$i.'] '// Link ausgeben

            Und brich deinen Code um, verflucht!
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Sorry, sitze hier vor nem Display mit 1600er Auflösung, habe nicht an den code gedacht. Jetzt sollte es besser sein.

              Danke für die Lösung, das mit min und max ist mir neu, ist aber genial.

              Kommentar


              • #8
                Original geschrieben von blumi
                das mit min und max ist mir neu, ist aber genial.
                Na ja, die erübrigen eigentlich nur eine zusätzliche Abfrage im Anweisungblock der Schleife, ob $i >= 1 und <= $gesamt ist. Wenn man die einbaut, kann man die Schleife auch von $akt-$anzahl bis $akt+$anzahl laufen lassen. Wäre etwas primitiver, erreicht aber genau das gleiche.


                Alles in allem ist es auf jeden Fall kein Voodoo, sondern nur ein kleines bisschen Arithmetik und Grundwissen über Schleifen.
                Was jemanden daran hindern kann, sowas unter Nutzung seines eigenen Denkapparates zu erstellen, verstehe ich immer noch nicht.
                Zuletzt geändert von wahsaga; 11.06.2007, 14:57.
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  wenn du das ganze mal für sql brauchen solltest könnte das so aussehen...
                  klick mich

                  Kommentar

                  Lädt...
                  X