Sky hilfe bei LIMIT

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

  • Sky hilfe bei LIMIT

    Hey Sky,

    Habe schon den Eintrag mit seitenweise Anzeigen gelesen, kann das aber nicht auf mein Script umsetzen. Bekomme immer Fehlermeldungen.
    _____________________

    Warning: Supplied argument is not a valid MySQL result resource in c:\apache\htdocs\gbuch\gbuch.anzeigen2.php on line 8

    Warning: Supplied argument is not a valid MySQL result resource in c:\apache\htdocs\gbuch\gbuch.anzeigen2.php on line 12
    ____________________

    Habe ein Script mit dem ich eigentlich ein Gästebuch ausgeben will, letzter Einrag zuerst.

    Und unten die Links für weiter und zurück setzen will.

    Hier das Script:
    <?
    include('../phpshop/inc/db_data.inc.php');
    $conn=mysql_connect($MySQL_Host, $MySQL_User, $MySQL_Passw);

    if (!$offset || $offset<0) $offset = 0;
    $diff = 3;
    $r = mysql_query("SELECT * FROM gbuch LIMIT $offset,10");
    $anz = mysql_result($r,0);
    if (!$offset || $offset<0) { $offset = 0; $disabled[prev] = TRUE; }
    if (($offset + $diff) >= $anz) { $diff = $anz - $offset; $disabled[next] = TRUE;}

    while ($row =mysql_fetch_array($r))
    {
    echo "<table border='0' cellpadding='0' cellspacing='0' width='445'>";
    echo "<tr><td width='100' valign='top'><p class='normal' align='left'><b>eintrag:</b></p></td>";
    echo "<td width='369'><p class='normal' align='left'>$row[eintrag]</td></tr>";
    echo "</table>";
    }

    //navigation:
    if (!$disabled[prev]) echo '<a href="'.$PHP_SELF.'?offset='.($offset-3).'">Vorherige Seite</a>';
    if (!$disabled[next]) echo '<a href="'.$PHP_SELF.'?offset='.($offset+3).'">Nächste Seite</a>';
    ?>
    *winks*
    Gilbert
    ------------------------------------------------
    Hilfe für eine Vielzahl von Problemen!!!
    http://www.1st-rootserver.de/

  • #2
    Try

    <?
    include('../phpshop/inc/db_data.inc.php');
    $conn=mysql_connect($MySQL_Host, $MySQL_User, $MySQL_Passw);
    if (!$offset || $offset<0) $offset = 0;
    $diff = 3;
    $r = mysql_query("SELECT * FROM gbuch") or die(mysql_error());
    $anz = mysql_result($r,0);
    if (!$offset || $offset<0) { $offset = 0; $disabled[prev] = TRUE; }
    if (($offset + $diff) >= $anz) { $diff = $anz - $offset; $disabled[next] = TRUE;}

    $r = mysql_query("SELECT * FROM gbuch LIMIT $offset,$diff") or die(mysql_error());
    while ($row =mysql_fetch_array($r))
    {
    echo "<table border='0' cellpadding='0' cellspacing='0' width='445'>";
    echo "<tr><td width='100' valign='top'><p class='normal' align='left'><b>eintrag:</b></p></td>";
    echo "<td width='369'><p class='normal' align='left'>$row[eintrag]</td></tr>";
    echo "</table>";
    }

    //navigation:
    if (!$disabled[prev]) echo '<a href="'.$PHP_SELF.'?offset='.($offset-$diff).'">Vorherige Seite</a>';
    if (!$disabled[next]) echo '<a href="'.$PHP_SELF.'?offset='.($offset+$diff).'">Nächste Seite</a>';
    ?>

    CAT Music Files

    Kommentar


    • #3
      Jetzt sagt es mir:
      Keine Datenbank ausgewählt

      Wo muß ich den Datenbanknamen angeben?
      *winks*
      Gilbert
      ------------------------------------------------
      Hilfe für eine Vielzahl von Problemen!!!
      http://www.1st-rootserver.de/

      Kommentar


      • #4
        $conn=mysql_connect($MySQL_Host, $MySQL_User, $MySQL_Passw);
        mysql_select_db('datenbankname');

        CAT Music Files

        Kommentar


        • #5
          fiel mir ebent selber ein nach dem ich meine Frage abgeschickt hatte, aber ich habe 5 Datensätze und des Script zeigt mir nur 2 Datensätze und keine Links an.
          *winks*
          Gilbert
          ------------------------------------------------
          Hilfe für eine Vielzahl von Problemen!!!
          http://www.1st-rootserver.de/

          Kommentar


          • #6
            Kann eigentlich nicht sein...
            Bei 5 Datensätzen, einer Schrittweite von 3 und 0 als Startpunkt ist der betreffende Code:

            if (($offset + $diff) >= $anz) { $diff = $anz - $offset; $disabled[next] = TRUE;}

            if ((0 + 3) >= 5) { $disabled[next] = TRUE;}

            ..also dürfte der Next-Link eigentlich nicht aus sein.

            CAT Music Files

            Kommentar


            • #7
              Hier die Ausgabe des Scripts:

              eintrag: test5

              ------------------------------------------------------------
              eintrag: test 4

              ------------------------------------------------------------

              und nichts weiter
              *winks*
              Gilbert
              ------------------------------------------------
              Hilfe für eine Vielzahl von Problemen!!!
              http://www.1st-rootserver.de/

              Kommentar


              • #8
                gut, dann schauen wir mal, was da falsch läuft:

                if (($offset + $diff) >= $anz) {
                $diff = $anz - $offset;
                $disabled[next] = TRUE;
                echo "NextLink ausgeschaltet (anz=$anz / offset=$offset / diff=$diff)<br>";
                }

                CAT Music Files

                Kommentar


                • #9
                  Das ist jetzt die Ausgabe:
                  NextLink ausgeschaltet (anz=2 / offset=0 / diff=2)
                  *winks*
                  Gilbert
                  ------------------------------------------------
                  Hilfe für eine Vielzahl von Problemen!!!
                  http://www.1st-rootserver.de/

                  Kommentar


                  • #10
                    Ach, da hab ich bei dir noch nen Fehler übersehen..

                    $r = mysql_query("SELECT * FROM gbuch")

                    muss heißen

                    $r = mysql_query("SELECT count(*) FROM gbuch")

                    CAT Music Files

                    Kommentar


                    • #11
                      Jetzt gehts nur wenn ich zur letzten Seite gehe und dann zurück gehen zeigt er mir auf der ersten Seite beide Links an und nicht nur Nächste Seite.

                      Dann habe ich noch eine Frage:

                      Wie setze ich jetzt bei dem Script "stripslashes" ein und wo?
                      *winks*
                      Gilbert
                      ------------------------------------------------
                      Hilfe für eine Vielzahl von Problemen!!!
                      http://www.1st-rootserver.de/

                      Kommentar


                      • #12
                        echo "<td width='369'><p class='normal' align='left'>".stripslashes($row[eintrag])."</td></tr>";

                        CAT Music Files

                        Kommentar


                        • #13
                          und wie kriege ich das andere Prob in Griff?
                          *winks*
                          Gilbert
                          ------------------------------------------------
                          Hilfe für eine Vielzahl von Problemen!!!
                          http://www.1st-rootserver.de/

                          Kommentar


                          • #14
                            Überleg ich mir noch... Muss nun weg, komme aber in ner halben oder einer Stunde wieder.

                            CAT Music Files

                            Kommentar


                            • #15
                              Wie kann ich auf allen Seiten anzeigen wieviele Einträge in Gästebuch sind?

                              z.B.: echo "$anz Einträge";
                              *winks*
                              Gilbert
                              ------------------------------------------------
                              Hilfe für eine Vielzahl von Problemen!!!
                              http://www.1st-rootserver.de/

                              Kommentar

                              Lädt...
                              X