10 Datensätze Pro Seite

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

  • 10 Datensätze Pro Seite

    Hallo,

    könnte mir mal jemand ein Beispiel zusenden / oder aufzeigen wie ich aus einer MySQL Datenbank Datensätze auslese und 10 Stck. Anzeige und Buttons vor und zurück einblenden kann.
    Bitte ohne include Dateien und auch mit Beispielausgabe!

    DANKE!

    Ralf

  • #2
    if (!$offset || $offset<0) $offset = 0;
    $r = mysql_query("SELECT felder FROM tabelle LIMIT $offset,10");
    while ($daten = mysql_fetch_array($r)) {
    //ausgabe...
    }
    //navigation:
    echo '<a href="'.$PHP_SELF.'?offset='.($offset-10).'">Vorherige Seite</a>';
    echo '<a href="'.$PHP_SELF.'?offset='.($offset+10).'">Nächste Seite</a>';


    [Editiert von Sky am 23-12-2001 um 22:15]

    CAT Music Files

    Kommentar


    • #3
      Gute Lösung....

      gelich mal ins > Code-Schnipsel-Forum verschieben

      php-Entwicklung | ebiz-consult.de
      PHP-Webhosting für PHP Entwickler | ebiz-webhosting.de
      die PHP Marktplatz-Software | ebiz-trader.de

      Kommentar


      • #4
        Frage dazu

        Danke für den Tip, hab es eingebunden leider funktioniert es nicht richtig bei mir. Ich sehe alle Datensätze und am Ende erhalte ich die Meldung:
        Fatal error: Maximum execution time of 30 seconds exceeded in include/install_adress.php on line 16


        Mein Code:
        <?
        include('mysql/mysql_my_data.php');
        $conn=mysql_connect($MySQL_Host, $MySQL_User, $MySQL_Passw);

        if (!$offset || $offset<0) $offset = 0;

        while ($row =mysql_fetch_array(mysql_query("SELECT * FROM tblinstallationen LIMIT $offset,10"))) {
        echo "<table border='0' cellpadding='0' cellspacing='0' width='445'>";
        echo "<tr><td width='100' valign='top'><p class='normal' align='left'><b>Adresse:</b></p></td>";
        echo "<td colspan='3' width='369'><p class='normal' align='left'>$row[Name]<br>";
        echo "$row[Strasse]<br>$row[Ort]</td></tr>";
        echo "<tr><td width='70'><p class='normal' align='left'><b>Telefon:</b></p></td>";
        echo "<td width='152'><p class='normal' align='left'>$row[Telefon]</td>";
        echo "<td width='70'><p class='normal' align='left'><b>Telefax:</b></p></td>";
        echo "<td width='152'><p class='normal' align='left'>$row[Telefax]</td></tr>";
        echo "<tr><td width='100'><p class='normal' align='left'><b>Produkt:</b></p></td>";
        echo "<td colspan='3'><p class='normal' align='left'>$row[Produkt]</td></tr>";
        echo "<tr><td width='100'><p class='normal' align='left'><b>Auftraggeber:</b></p></td>";
        echo "<td colspan='3'><p class='normal' align='left'>$row[Auftraggeber]</td></tr>";
        echo "<tr><td width='443' colspan='4'>";
        echo "<img border='0' src='../images/space.gif' width='10' height='10'></td></tr>";
        echo "</table>";
        }

        //navigation:
        echo '<a href="'.$PHP_SELF.'?offset='.($offset-10).'">Vorherige Seite</a>';
        echo '<a href="'.$PHP_SELF.'?offset='.($offset+10).'">Nächste Seite</a>';
        ?>

        Was mache ich falsch?

        Kommentar


        • #5
          Machen wir's lieber so:

          $r = mysql_query("SELECT * FROM tblinstallationen LIMIT $offset,10");
          while ($row =mysql_fetch_array($r)) {

          [Editiert von Sky am 23-12-2001 um 22:17]

          CAT Music Files

          Kommentar


          • #6
            DANKE!!!!

            SUPER DANKE FÜR DEINE HILFE!!!

            Kommentar


            • #7
              Eine Frage noch

              Gibt es auch eine Möglichkeit am Ende und am Anfang das Weiterblättern zu verhindern?

              Kommentar


              • #8
                $r = mysql_query("SELECT count(*) FROM tblinstallationen");
                $anz = mysql_result($r,0);
                if (!$offset || $offset<0) { $offset = 0; $disabled[prev] = TRUE; }
                if ($offset>$anz-10) { $offset = $anz-10; $disabled[next] = TRUE; }
                $r = mysql_query("SELECT felder FROM tblinstallationen LIMIT $offset,10");
                while ($daten = mysql_fetch_array($r)) {
                //ausgabe...
                }
                //navigation:
                if (!$disabled[prev]) echo '<a href="'.$PHP_SELF.'?offset='.($offset-10).'">Vorherige Seite</a>';
                if (!$disabled[next]) echo '<a href="'.$PHP_SELF.'?offset='.($offset+10).'">Nächste Seite</a>';

                CAT Music Files

                Kommentar


                • #9
                  Letzte Seite

                  Auf der letzten Seite sehe ich nicht nur 2 Datensätze sondern die letzten 10. Wenn ich dann zurückblätter sehe ich in der URL bei offset dann z.B. 12 statt 10. Kann ich das verhindern das ich auf der letzten Seite die letzten 10 sehe dafür nur 2?

                  Kommentar


                  • #10
                    So muss es sein

                    Hier die Lösung zu meinem Problem für alle die es interessiert:
                    if (!$offset || $offset<0) $offset = 0;
                    $diff = 10;
                    $r = mysql_query("SELECT count(*) FROM tblinstallationen");
                    $anz = mysql_result($r,0);
                    if (!$offset || $offset<0) { $offset = 0; $disabled[prev] = TRUE; }
                    if (($offset + $diff) >= $anz) { $diff = $anz - $offset; $disabled[next] = TRUE;}

                    Kommentar

                    Lädt...
                    X