seitenblättern

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

  • seitenblättern

    Hi,

    ein neues problem

    es geht um seiten/ blättern

    ich will das immer 10 eintäge pro seite angezeigt werden ich habe 70 datensätze ...es werden immer bei jemde blättern auch bei der haupt seite immer 70 datensätze angezeigt keine 10 ...
    was mache ich falsch



    PHP-Code:

      
    /* Zugriff auf SQL-Server und Abfragen der Tabelle */
      
    MYSQL_CONNECT($server$user$passwort) or die ("<H3>Datenbankserver nicht erreichbar</H3>");
      
    MYSQL_SELECT_DB($datenbank) or die ( "<H3>Datenbank nicht vorhanden</H3>");

    $result=MYSQL_QUERY"SELECT ID, Name, Beschreibung FROM $tabelle order by name");

      
    /* Ausgabe der Tabelle in einem HTML-Table */
      
    echo  "<table  border=\"1\" align=center width=60%>";
      echo  
    "<td>";


       while(
    $row  =  mysql_fetch_row($result))  {
          echo  
    "<table  border=\"1\" align=center width=75%><br><br>";
          echo  
    "<tr>";
          echo  
    "<td><font size=2 face=Arial> ID: ".$row['ID']."$row[0]";

        for(
    $i=1;  $i mysql_num_fields($result);  $i++)  {
          echo    
    "<tr><td><font size=2 face=Arial>$row[$i]</td>";
        }
        echo    
    "</tr>\n";
      }
      echo  
    "</table><br><br>";

    /*
    gegeben ist:
    $total = Anzahl der Einträge die vorhanden sind.
    Ermitelt zum Bsp. so:
    $result = mysql_query("SELECT COUNT(*) FROM ".$tabelle);
    $total    = mysql_result($result,0);


    */

    // ------------------
    $result mysql_query("SELECT COUNT(*) FROM ".$tabelle);
    $total    mysql_result($result,0);
    // ------------------

    $proseite 10 // Anzahl der Eintraege pro Seite
    $anzseiten 10 // Anzahl der Links die angezeigt werden.
    $seite = (isset($seite)) ? abs((int)$seite) : 1;

    echo 
    "Das 'MySql-limit' ist: ... LIMIT ".(($seite-1)*$proseite ).",".$proseite."<br>\n<br>\n" ;


    //------
    $seitentotal ceil($total/$proseite) ;
    $start floor($seite $anzseiten/2) ;
    $start =   $start <= ?  $start ;
    $end = ($start $anzseiten-1)   ;
    $end =   $end >= $seitentotal ?  $seitentotal $end ;

    // ausgabe der Links
    if ($seite 1)
        
    printf ('<a href="test1.php?seite=%s">&lt;&lt;&lt;</a> ',$seite-1);
       
    // seiten.php anpassen
    if ($start 1)
        
    printf ('<a href="test1.php?seite=%s">%s</a>... ',1,1);
      
    // seiten.php anpassen
    for ($i $start$i <= $end ;$i++){
        if(
    $i==$seite){
           
    printf ("=%s= ",$i);
      
    // kein Link da sind wir ja :-)
        
    }else{
           
    printf ('<a href="test1.php?seite=%s">%s</a> ',$i,$i);
     
    // seiten.php anpassen
        
    }
    }
    if (
    $end $seitentotal)
        
    printf (' ...<a href="test1.php?seite=%s">%s</a> ',$seitentotal,$seitentotal);
     
    // seiten.php anpassen

    if ($seite $seitentotal)
        
    printf ('<a href="test1.php?seite=%s">&gt;&gt;&gt;</a> ',$seite+1);
      
    // seiten.php anpassen
      // ende der ausgabe



      
    MYSQL_CLOSE();
    ?> 

  • #2
    Schön dass Du Dir das SQL Limit pere echo ausgeben lässt ... Nur benutzen tust Du es nicht
    h.a.n.d.
    Schmalle

    http://impressed.by
    http://blog.schmalenberger.it



    Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
    ... nur ohne :-)

    Kommentar


    • #3
      heißter tipp: nach dem thema kann man gut im forum suchen!

      schmalle hat natürlich recht - wo ist denn die begrenzung?
      wozu die hundert zeilen posten?

      Kommentar


      • #4
        ich weiss das einiges über dieses thema gibt aber leider hat es mir nicht geholfen ...aus diesem grund habe ich beschlossen diesen weg zu gehen ...

        ich komme nicht weiter ich bitte um beispiele ...

        Kommentar


        • #5
          du hast den befehl LIMIT gefunden - hier wurde auch schon oft besprochen, wie man ihn anwendet. aber auch die dokumentation verrät sowas gern. wieso suchst du nicht?

          Kommentar


          • #6
            ich suche aber verstehe es nicht so BITTE im HILFE sonst würde ich nicht hier um hilfe warten

            Kommentar


            • #7
              Wer hat denn das programmiert, was du da oben gepostet hast?

              Oder hast du das aus diversen Tutorials falsch zusammenkopiert?

              PHP-Code:
              // ------------------
              $result mysql_query("SELECT COUNT(*) FROM ".$tabelle);
              $total    mysql_result($result,0);
              // ------------------

              $proseite 10 // Anzahl der Eintraege pro Seite
              $anzseiten 10 // Anzahl der Links die angezeigt werden.
              $seite = (isset($seite)) ? abs((int)$seite) : 1;

              echo 
              "Das 'MySql-limit' ist: ... LIMIT ".(($seite-1)*$proseite ).",".$proseite."<br>\n<br>\n" 
              Die letzte Zeile davon ist interessant. Den Teil mit LIMIT musst du nämlich an deinen ersten Query dranhängen.
              hopka.net!

              Kommentar


              • #8
                hi,

                ich habe vieles zusammengeschnitten...

                das mit LIMIT ist nicht das problem kann nicht sein...
                das mit limit gibt sowas aus Das 'MySql-limit' ist: ... LIMIT 0,10 das heisst sowas wie die seite 0 von 10 ....

                mensch ich komme einfach nicht weiter seit einem tag versuche ich das schon zum laufen zu brigen ...

                es ist bestimmt ein kleiner fehler ...

                wie gesagt er zeigt mir bei allen blättern auch bei der tes1.php hauptseite alle 70 daten an.

                Kommentar


                • #9
                  das LIMIT ist nicht das problem.
                  dass du nicht weißt, wohin damit - das ist dagegen eins.

                  das ist ein sql-befehl, d.h. du sollst ihn an die sql-datenbank schicken, und zwar noch innerhalb deiner anfrage.

                  suche im forum und , für diese funktionalität gibt es zahlreiche beispiele.

                  Kommentar


                  • #10
                    Hi,

                    penizillin danke für die info ich nehme alles wieder zurück ...
                    du hasst recht es geht jetzt war doch nicht so schwer ;-)

                    THX

                    Kommentar


                    • #11
                      Hi,

                      ich habe leider noch eine frage ....
                      wie kann ich <<< 1 [2] 3 4 5 6 7 >>> zentriert darstellen zurzeit ist es links ....

                      peinlich peinlich peinlich sorry dumme frage aber leider weiss ich es nicht :-)



                      PHP-Code:
                      $result mysql_query("SELECT COUNT(*) FROM ".$tabelle);
                      $total    mysql_result($result,0);
                      // ------------------

                      $seitentotal ceil($total/$proseite) ;
                      $start floor($seite $anzseiten/2) ;
                      $start =   $start <= ?  $start ;
                      $end = ($start $anzseiten-1)   ;
                      $end =   $end >= $seitentotal ?  $seitentotal $end ;


                      // ausgabe der Links
                      if ($seite 1)
                          
                      printf ('<font size=2 face=Arial><a href="test1.php?seite=%s">&lt;&lt;&lt;</a> ',$seite-1);
                         
                      // seiten.php anpassen
                      if ($start 1)
                          
                      printf ('<font size=2 face=Arial><a href="test1.php?seite=%s">%s</a>... ',1,1);
                        
                      // seiten.php anpassen
                      for ($i $start$i <= $end ;$i++){
                          if(
                      $i==$seite){
                             
                      printf ("<font size=2 face=Arial><strong>[%s]</strong> ",$i);
                        
                      // kein Link da sind wir ja :-)
                          
                      }else{
                             
                      printf ('<font size=2 face=Arial><a href="test1.php?seite=%s">%s</a> ',$i,$i);
                       
                      // seiten.php anpassen
                          
                      }
                      }
                      if (
                      $end $seitentotal)
                          
                      printf ('<font size=2 face=Arial> ...<a href="test1.php?seite=%s">%s</a> ',$seitentotal,$seitentotal);
                       
                      // seiten.php anpassen

                      if ($seite $seitentotal)
                          
                      printf ('<font size=2 face=Arial><a href="test1.php?seite=%s">&gt;&gt;&gt;</a> ',$seite+1);
                        
                      // seiten.php anpassen
                        // ende der ausgabe 

                      Kommentar


                      • #12
                        ich habe es hinbekommen ...

                        sorry ....

                        Kommentar

                        Lädt...
                        X