bjb: seitenumbruch im gästebuch

hallo zusammen
ich hab ein gästebuch programmiert und würde gerne eine funktion hinzufügen um das gästebuch auf mehrere seiten zu verteilen, d.h. z.b. nur X beiträge bzw.pixel pro seite und dann eine neue seite.
hat jemand eine idee?

gruß bjb

  1. Hier du musst nur noch deine Sachen einbauen. Ersetze "tabelle" mit deinem Tabellenname usw.

    der code:
    <?php

    /* Einstellungen für die anzeige der News */
    $max = "5"; # Maximale Anzahl an Postss auf einer Seite
    $startat = (isset($startat)) ? abs((int)$startat) : 0;

    /* Anzahl aller News in der Datenbank holen */
    $resultID = @mysql_query("SELECT COUNT(id) FROM "tabelle" ");
    $count = @mysql_result($resultID,0);

    /* Gesamte Anzahl der Posts mit dem Startwert vergleichen und ersetzen falls manipuliert */
    if($startat > $count) { $startat = $count - $max; }

    /* Posts aus der Datenbank holen */
    $query = "SELECT * FROM "tabelle" ORDER BY "datum" DESC LIMIT ".$startat.",".$max;
    $data = @mysql_query($query);

    /* Ausgabe */
    while ($daten = mysql_fetch_array($data)) {
         Hier kommt die Ausgabe der Posts hin
    }

    /* "weiter"- und "zurück"-Button generieren */
    if ($startat > 0) {
          $newStartat = ($startat - $max < 0) ? 0 : ($startat-$max);
          echo "<a href='guestbook.php?
          startat=".$newStartat."'>zurück</a>";
    } else { echo "zurück"; }
    echo " | ";
    if ($startat + $max < $news_count) {
         $newStartat = $startat + $max;
         echo "<a href='guestbook.php?startat=".$newStartat."'>weiter</a>";
    } else { echo "weiter"; }
    ?>

    mfg Manuel

    1. Danke

      gruß bjb

    2. <?php

      $max = "5"; # Maximale Anzahl an Postss auf einer Seite
      $startat = (isset($startat)) ? abs((int)$startat) : 0;

      /* Anzahl aller News in der Datenbank holen */
      $resultID = @mysql_query("SELECT COUNT(id) FROM "tabelle" ");

      für (id) einen Wert einsetzen?
      echo $resultID geht nicht

      $count = @mysql_result($resultID,0);

      echo $count auch nicht

      /* Gesamte Anzahl der Posts mit dem Startwert vergleichen und ersetzen falls manipuliert */
      if($startat > $count) { $startat = $count - $max; }

      /* Posts aus der Datenbank holen */
      $query = "SELECT * FROM "tabelle" ORDER BY "datum" DESC LIMIT ".$startat.",".$max;
      $data = @mysql_query($query);

      /* Ausgabe */
      while ($daten = mysql_fetch_array($data)) {
           Hier kommt die Ausgabe der Posts hin
      }

      /* "weiter"- und "zurück"-Button generieren */
      if ($startat > 0) {
            $newStartat = ($startat - $max < 0) ? 0 : ($startat-$max);
            echo "<a href='guestbook.php?
            startat=".$newStartat."'>zurück</a>";
      } else { echo "zurück"; }
      echo " | ";
      if ($startat + $max < $news_count) {      <-was ist $news_count
           $newStartat = $startat + $max;
           echo "<a href='guestbook.php?startat=".$newStartat."'>weiter</a>";
      } else { echo "weiter"; }

      links gehen nicht

      ?>

      mfg Manuel

      1. Hallo bjb,

        nix gegen dich, aber hier haben wir ein Beispiel, warum es nichts bringt fertige Scripte zu posten...

        $resultID = @mysql_query("SELECT COUNT(id) FROM "tabelle" ");
        für (id) einen Wert einsetzen?

        nein, count(id) zählt die Zeilen in der Tabelle.
        außerdem ist der String nach "...FROM " zu Ende.

        echo $resultID geht nicht

        Fehlermeldung? (ich tipp mal dass du irgendwas mit "Resource id #2" o.ä. ausgegeben bekommst)

        $count = @mysql_result($resultID,0);
        echo $count auch nicht

        mit mysql_result() arbeite ich idR nicht, aber
        $count = mysql_fetch_row($resultID);
        echo $count[0];
        sollte helfen
        ->http://www.php.net/mysql_result, http://www.php.net/mysql_fetch_row

        links gehen nicht

        was geht nicht? Fehlermeldung? Ausgabe soll/ist?

        Grüße aus Nürnberg
        Tobias

        --
        Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|
        1. hallo

          Hallo bjb,

          nix gegen dich,

          danke

          nein, count(id) zählt die Zeilen in der Tabelle.
          außerdem ist der String nach "...FROM " zu Ende.

          hab ich auch gemerkt; tabellenname natürlich ohne ""

          echo $resultID geht nicht
          Fehlermeldung? (ich tipp mal dass du irgendwas mit "Resource id #2" o.ä. ausgegeben bekommst)

          das ist ja das problem; es wird NICHTS ausgegeben

          » $count = @mysql_result($resultID,0);
          mit mysql_result() arbeite ich idR nicht, aber
          $count = mysql_fetch_row($resultID);
          echo $count[0];
          sollte helfen

          if(!empty($count[0])){echo "hurra";}
            hurra wird NICHT angezeigt

          links gehen nicht
          was geht nicht? Fehlermeldung? Ausgabe soll/ist?

          keine fehlermeldung, funktionieren aber nicht (else-fall tritt ein)

          liegt das evtl an meinem (zusammengepfuschten) server ?

          gruß und dank bjb