seiten navigation ...

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

  • seiten navigation ...

    hi maedels

    Also habe schon viel gelesen dazu und so weiter aber stelle mir es einfacher vor ... :

    und zwar so ....


    ich habe eine mysql ausgabe mit LIMIT - limit anfang bekommt eine variable und limit ende auch :=)

    also so LIMIT $anfang, $ende ...

    jetz mache ich gleichzeitig noch count - ich zaehle die vorhanden einträge -

    ich mach ne variable der anzahl auf jeder seite -

    dann teile ich die einträge durch die anzahl auf jeder seite ... falls die anzahl auf der ersten seite kleiner ist als die maximal anzahl wird die navbar ausgeblendet -

    falls mehr sind wird eine navbar mit sovielen seiten eingeblendet wie count durch die anzahl ergibt ^^ - der rest wird auf die leztzte seite verteilt ^^

    $anfang und $ende wird immer die zahl dazu addiert die die maximale anzahl auf jeder seite sein darf ...

    und per get uebergebe ich dann immer diese zahl ^^ - also wird in die blätter links per schleife eingarbeitet ^^


    so ... wuerde gerne mal von euch wissen (bevor ich mir ein abschreibe) ob das so geht - wenn fragen da sind fragt -


    greeeetz - subabrain !

  • #2
    also gut -- dann mach ich mich mal ans werk und sage euch obs was geworden ist ^^

    Kommentar


    • #3
      Was fällt Dir auf??

      subabrain:
      LIMIT $anfang, $ende

      MySQL:
      LIMIT $anfang, $anzahl

      Na?
      carpe noctem

      [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
      [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

      Kommentar


      • #4
        Also ich habe jetz mal das hier - es funktioniert auch echt gut - es gibt nur ein problem - ein logisches problem (das ich ned verstehe )
        und zwar ... wenn ich meinetwegen 4 einträge habe ... und die anzahl pro seit ist auf 3 begrenzt ... werden mir bei seite 0 - und bei seite 1 jeweils 3 einräge angezeigt obwohl ich nur 4 in der db habe ... das check i ned .. aber wahrscheinlich n ganz logischer fehler - komme nur gerade nicht hinter ihn - wahrscheinlich hats was mit maximalen einträgen zu tun oder so ... naja .. schaut selbst (respekt an den der es schafft mir meinen fehler zu nennen !)

        PHP-Code:

        //Seitennavi Anfang
        $anfang $_GET['anfang'];

        if(!
        $anfang){$anfang 0;}

        //anzahl der einträge auf einer seite
        seitenanzahl 3;

        $ende $anfang $seitenanzahl;

        //mysql abfrage zur anzahl der einträge der mysql datenbank
        $result2 mysql_query("SELECT COUNT(einträge) as gesamtanzahl FROM tabellenname");

        while (
        $row2 mysql_fetch_assoc($result2)) {
        $gesamtanzahl $row2["gesamtanzahl"];

        if(
        $gesamtanzahl $seitenanzahl)
        {

        //seitenanzahl aufrunden
        $seiten ceil($gesamtanzahl/$seitenanzahl);


        //anfang schleife fuer anzahl der seitenlinks 1, 2 usw ...
        $i 0;

        while(
        $i $seiten)
        {
        echo 
        "<a href='index.php?anfang=$i'>$i</a>";
        $i++;
        }

        //ende schleife

        }
        }



        //hier die ausgabe bei der die navigation verwendet werden soll :
        $query "SELECT * FROM * ORDER BY * DESC LIMIT $anfang$ende";
        $result mysql_query($query); 

        THX !!!!


        subabrain !

        Kommentar


        • #5
          Re: Was fällt Dir auf??

          Original geschrieben von goth
          subabrain:
          LIMIT $anfang, $ende

          MySQL:
          LIMIT $anfang, $anzahl

          Na?
          -- was faellt mir auf ? --

          hmm aja ... die anzahl ... der sichtbaren einträge ist die hintere zahl ??? - evtl ist das ja die lösung ^^

          Kommentar


          • #6
            thx -- schonmal die erste antwort ich hoffe es folgen weitere ... sonst darf ich wieder mir die nacht wegen sowas um die ohren schlagen - wobei ich mir sie schon wegen einem anderem code, um die ohren schlagen muss - also wäre ich euch dankbar --- ihr seit die profis !

            da ich das mit der 1. antwort leider nicht ganz verstanden habe ^^

            EDIT : is doch keine nacht geworden - jetz hab ichs :

            PHP-Code:

            //Seitennavi Anfang
            $anfang $_GET['anfang'];

            if(!
            $anfang){$anfang 0;}

            //anzahl der einträge auf einer seite
            $seitenanzahl 3;

            $anfang $anfang*$seitenanzahl;
            $ende $seitenanzahl;

            //mysql abfrage zur anzahl der einträge der mysql datenbank
            $result2 mysql_query("SELECT COUNT(einträge) as gesamtanzahl FROM tabellenname");

            while (
            $row2 mysql_fetch_assoc($result2)) {
            $gesamtanzahl $row2["gesamtanzahl"];

            if(
            $gesamtanzahl $seitenanzahl)
            {

            //seitenanzahl aufrunden
            $seiten ceil($gesamtanzahl/$seitenanzahl);


            //anfang schleife fuer anzahl der seitenlinks 1, 2 usw ...
            $i 0;

            while(
            $i $seiten)
            {
            echo 
            "<a href='index.php?anfang=$i'>$i</a>";
            $i++;
            }

            //ende schleife

            }
            }



            //hier die ausgabe bei der die navigation verwendet werden soll :
            $query "SELECT * FROM * ORDER BY * DESC LIMIT $anfang$ende";
            $result mysql_query($query); 
            Zuletzt geändert von subabrain; 17.09.2005, 01:15.

            Kommentar


            • #7
              PHP-Code:
              //anzahl der einträge auf einer seite
              $seitenanzahl 3;

              $anfang $anfang*$seitenanzahl// => [b]versteh ich nicht[/b]
              $ende $seitenanzahl
              warum multiplizierst du die anzahl der einträge pro seite mit dem anfang der auf der seite gezeigten einträge?
              Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

              Kommentar


              • #8
                ganz einfach -- wenn du als anfang 0 hast - und als seitenanzahl zum beispiel 5 angegeben hast dann ergibt 0 mal 5 die zahl 0 - d.h. LIMIT anfang ist dann 0 - d.h. ab 0 wird angefangen auszugeben !!!

                noch ein beispiel anfang ist 1 und du hast als seitenanzahl 5 jetz - ist anfang die zahl 5 weil 5 mal 1 = 5 - d.h. angefangen wird bei LIMIT 5, seitenzahl ....

                und so geht das immer weiter


                PS : ja ich habe auch manchmal wenn auch nur selten antworten parat ^^

                ich gebs zu die variablen namen sind etwas verunglückt - aber versuche einfach die kommentare etwas auszublenden ;=

                Kommentar


                • #9
                  ok das hab ich jetzt auch verstanden.....
                  gehts denn jetzt??
                  Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

                  Kommentar


                  • #10
                    ja wie ich bereits geschrieben habe geht es jetzt ^^ habe es auch bereits in ein gästebuch eingebaut das es hier bald wohl unter scripts zum dl gibt - wenns geprüft wurde ^^

                    also ich hoffe das war keine werbung jetzt

                    in diesem sinne happy brainstorming !


                    greetz subabrain !

                    Kommentar

                    Lädt...
                    X