Ergebnis 1 bis 7 von 7

Thema: Seiten Anzahl im Gästebuch

  1. #1
    Gast

    Standard Seiten Anzahl im Gästebuch

    Hallo,

    und zwar habe ich folgendes Problem:

    Habe mir ein kleines Gästebuch mit PHP und SQL zusammen gebastelt.
    Soweit funktioniert auch alles.

    Problem ist nur das sich ab einer bestimmten Anzahl von Beiträgen das Gästebuchh in mehrere Seiten aufteilen soll. Also wenn ich 10 Beiträge habe, sollen 5 auf der ersten Seite sein und die anderen 5 dann auf Seite 2 usw.

    Habe es soweit auch hinbekommen, das er mir unten anzeigt wieviele Seiten nun vorhanden sind. Aber er teilt mir die Beiträge nicht auf die Seiten auf. Er zeigt mir auf jeder Seite immer die gleichen Beiträge an.

    Habe 16 Testbeiträge im Gästebuch geschrieben um es auszuprobieren!!!

    Hier mal der Source code der guestbook.php:

    Code:
    <? ### Gästebuch Anfang ### ?>
    <title>Gästebuch</title>
    <div align="center"><? echo "<a href=\"eintrag.php\"><font color=\"$linkfarbe\">Eintrag verfassen</a></font>"; ?></div>
    
    
    <?php
    $dbh=mysql_connect&#40;"localhost","****","********"&#41;;
    mysql_select_db&#40;"gb",$dbh&#41;;
    // hier musst du dann eine verbindung zur datenbank herstellen, und die entsprechenden variablen einfügen &#40;pw, username, datenbankname etc&#41;
    $sgl ="SELECT
                id,
                name,
                email,
                www,
                eintrag
           FROM
                gb
           ORDER BY
                 id DESC;";
    $result = mysql_query&#40;$sgl&#41; OR die&#40;mysql_error&#40;&#41;&#41;;
    echo "<div align=\"center\">
    
    Es sind ".mysql_num_rows&#40;$result&#41;."\nEinträge im Gästebuch</p></div>\n";?>
    <? while&#40;$row = mysql_fetch_assoc&#40;$result&#41;&#41; &#123; ?>
    
    <?
    echo "<div align=\"center\">";
    echo "<table border=\"1\" width=\"60%\">";
    echo "<tr>";
    echo "<td align=\"left\" bgcolor=\"$infofarbe\">Nr&#58;\n";
    echo $row&#91;'id'&#93;;
    echo "</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td align=\"left\" bgcolor=\"$infofarbe\">Name&#58;\n";
    echo $row&#91;'name'&#93;;
    echo "</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td align=\"left\" bgcolor=\"$infofarbe\">E-Mail&#58;\n";
    echo "<a href=\"mailto&#58;".$row&#91;'email'&#93;."\">schreiben</a>";
    echo "</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td align=\"left\" bgcolor=\"$infofarbe\">Homepage&#58;\n";
    echo " <a href=\"".$row&#91;'www'&#93;."\">Hier klicken</a>";
    echo "</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td align=\"center\" bgcolor=\"$txtareafarbe\">";
    echo $row&#91;'eintrag'&#93;;
    echo "</td>";
    echo "</tr>";
    echo "</table>";
    echo "</div>";
    echo "
    ";
    &#125;
    ?>
    <div align="center"><? echo "<a href=\"eintrag.php\"><font color=\"$linkfarbe\">Eintrag verfassen</a></font>"; ?></div>
    
    <?
    echo "<body bgcolor=\"$hgfarbe\">";
    echo "<div align=\"center\">
    
    Es sind ".mysql_num_rows&#40;$result&#41;."\nEinträge im Gästebuch</p></div>\n";
    ?>
    <body onselectstart="return false" oncontextmenu="return false" ondragstart="return false">
    
    <? ### Seitenangaben ?>
    <div align="center">
    <?php
    $db = mysql_connect&#40;'localhost','*****','*****'&#41;;
    mysql_select_db&#40;'gb', $db&#41;;
    $sql = "select name, email, eintrag from gb";/* Da die Daten aus einer Datenbank kommen sollen, wird hier eine Verbindung zur Datenbank erstellt. In der Variablen $sql wird der Querycode gespeichert, allerdings jetzt noch ohne dem limit-Statement.  */
    
    if &#40;!isset&#40;$_REQUEST&#91;'Total'&#93;&#41;&#41;
    &#123;
      $result = mysql_query&#40;$sql&#41;;
      $Total = mysql_num_rows&#40;$result&#41;;
      unset&#40;$result&#41;;
    &#125;
    else
    &#123;
      $Total = $_REQUEST&#91;'Total'&#93;;
    &#125;/* Das Script muss berechnen können wieviele Links zum Blättern angezeigt werden sollen. Für diese Berechnungen braucht das Script die genaue Zahl der Datenbankeinträgen die der Query zurückgeben würde, z.B. 300 Waren aus einem Laden. Mit der Funktion mysql_num_rows&#40;&#41; wird errechnet wieviele das sind. Das ist auch der Grund warum das limit-Statement noch nicht hinzugefügt wurde. */
    if &#40;!isset&#40;$_REQUEST&#91;'Seite'&#93;&#41;&#41;
    &#123;
      $Seite = 1;
    &#125;
    else
    &#123;
      $Seite = $_REQUEST&#91;'Seite'&#93;;
    &#125;
    if &#40;$Seite > $Total&#41; $Seite = $Total;
    /* Die Variable $Seite kann vom Besucher kommen. Wenn noch kein Wert da ist, befindet sich der Besucher noch auf der ersten Seite. Deshalb wird, wenn $_REQUEST&#91;'Seite'&#93; nicht gesetzt wurde, die Variable $Seite automatisch auf 1 gesetzt.*/
    $ProSeite = 15;
    $LinksZahl = 7;
    $SeitenZahl = ceil&#40;$Total/$ProSeite&#41;;
    if &#40;$LinksZahl % 2 == 0&#41; $LinksZahl++;
    $NumerischeLinks = &#40;$LinksZahl - 1&#41; / 2;
    $url = $_SERVER&#91;'PHP_SELF'&#93;;/* In diesem Abschnitt werden einige, sehr wichtige, Variablen initialisiert. Sie müssen aber nur die ersten zwei davon nach Belieben ändern. Die Variablen haben folgende Zwecke&#58;
    - $ProSeite&#58; Anzahl der Datenbankeinträge &#40;z.B. News oder Warenpreise&#41; pro Seite angezeigt werden müssen &#40;können Sie nach Belieben ändern&#41;
    - $LinksZahl&#58; Anzahl der numerischen Links die es geben soll &#40;z.B. 5&#41;. Diese Zahl soll ungerade sein &#40;wenn das nicht so ist, dann erhöht das Script diese Zahl automatisch um eins&#41;. Die Links "Anfang", "zurück", "weiter" und "Ende" werden hier nicht mitgerechnet.
    - $SeitenZahl&#58; errechnet automatisch wieviele Seiten es gibt. Dies geschieht indem das Resultat von der Teilung "Anzahl der Datenbankeinträge" geteilt durch "Anzahl der Treffer die pro Seite gezeigt werden" nach oben abzurunden.
    - $NumerischeLinks&#58; errechnet die Zahl der Links die links und rechts von der aktuellen Seite stehen &#40;z.B. wenn der Besucher auf Seite 5 sich befindet, stehen links die Links für die Seiten 2, 3 und 4 und rechts davon die Links für die Seiten 6, 7 und 8&#41;. Die Zahl wird wie folgt berechnet&#58; "die Zahl der Navigationslinks die gezeigt werden sollen minus 1 und danach geteilt durch 2".
    - $url&#58; die Links verweisen immer zur selben URL */
    $sql .= " limit ". &#40;$Seite * $ProSeite - $ProSeite&#41; .", ".$ProSeite;
    $result = mysql_query&#40;$sql&#41;;
    mysql_close&#40;$db&#41;;/* Hier wird das limit-Statement am Query hinzugefügt und somit werden dann die zu zeigende Datensätze aus der Datenbank geholt, wonach die Verbindung zur Datenbank geschlossen werden kann. Das limit-Statement braucht zwei Parameter&#58; der Startindex &#40;wobei von null angefangen wird zu zählen&#41; und die Anzahl der Datensätze die geholt werden müssen. Der erste Parameter ergibt sich aus folgender Berechnung&#58; $Seite mal $ProSeite minus $ProSeite &#40;Beispiel um zweiter Satz von 15 Datensätze zu sehen&#58; 2 * 15 - 15 = 15. */
    $AuslassungszeichenVorn = '';
    $AuslassungszeichenHinten = '';
    $AnfangLink = '';
    $EndeLink = '';
    $ZurueckLink = '';
    $WeiterLink = '';
    $SichtbareLinks = '';/* Hier werden die Variablen für die einzelne Links deklariert. Sie werden erst nachher einen Wert bekommen um dann am Ende auf dem Bildschirm gezeigt zu werden. Wenn ein Link nicht vorkommen soll &#40;z.B. der "Ende-Link" wenn der Besucher auf der letzten Seite ist&#41;, dann wird diese Variable leer gelassen und wird der Link nicht gezeigt. */
    if &#40;$SeitenZahl > 1&#41;
    &#123;
      $Nr = $Seite - $NumerischeLinks;
      $Anzeige = 0;
    
      while &#40;$Nr <= $SeitenZahl&#41;
      &#123;
         if &#40;$Nr < 1&#41; &#123;$Nr++; continue;&#125;
         elseif &#40;$Nr > $Seite + $NumerischeLinks&#41; &#123;break;&#125;
         if &#40;$Nr == $Seite&#41; &#123;$SichtbareLinks .= " $Nr";&#125;
         else &#123;$SichtbareLinks .= ' '.$Nr.'';&#125;
         $Nr++;
         $Anzeige++;
      &#125;
    &#125;/* Dieser Code sorgt dafür, dass die numerischen Links hinzugefügt werden. Das ist nur notwendig wenn es mehr als eine Seite gibt. Der Code fängt an mit der Initialisierung von zwei Variablen. $Nr ist gleich $Seite minus $NumerischeLinks. Diese Variable wird dazu verwendet die Schleife, die die einzelne Links generiert, nur so oft durchlaufen zu lassen wie nötig. Die Variable $Anzeige wird verwendet um später noch nachgehen zu können wieviele Links auf dem Bildschirm gezeigt werden.
    
    Die Schleife wird so oft wiederholt bis $Nr größer ist als $SeitenZahl &#40;in der Praxis wird die Schleife schon früher beendet&#41;. Wenn $Nr kleiner ist als 1, dann wird $Nr um eins erhöht und fängt die Schleife mit dem nächsten Durchlauf an. Wenn $Nr größer ist als $Seite plus $NumerischeLinks &#40;z.B. 9 ist größer als 5 + 3&#41;, dann müssen keine weiteren Links mehr generiert werden und wird die Schleife abgebrochen.
    Jetzt muss man die Links generieren. Dabei ist es unsinnig den Besucher einen Link zu zeigen der zur Seite führt auf dem er sich befindet. Wenn ein Besucher sich z.B.auf Seite 4 befindet, währe es sinnlos ihm einen zu dieser Seite anzubieten. Deshalb wird das Script einen Unterscheid machen&#58; wenn $Nr gleich $Seite ist, dann wird kein Link ausgegeben, sondern einfach die Seitennummer. Ansonsten wird ein Link generiert der die Variablen $Nr und $Total an der aktuellen Adresse &#40;$url&#41; hängt. */
    if &#40;$Seite > 1&#41;
    &#123;
      $AnfangLink = ' Anfang';
      if &#40;$Seite - 1 > 1&#41;
      &#123;
        $ZurueckLink = ' Zurück';
      &#125;
    &#125;/* In diesem Abschnitt werden die Links "Anfang" und "zurück" hinzugefügt. Dies soll nur so sein wenn $Seite größer ist als 1. Der Anfang-Link wird dann automatisch hinzugefügt. Der zurück-Link wird nur hinzugefügt wenn $Seite minus eins auch größer ist als 1 &#40;dies ist der Fall wenn der Besucher sich auf Seite 2 befindet, wobei ein zurück-Link in Kombination mit einem Anfang-Link überflüssig ist&#41;.
    Beachten Sie, dass im obigen Code vor jedem Link noch steht. Dies erzeugt eine Leerstelle mit n-Breite &#40;der Breite des Buchstaben 'n'&#41;. Somit "kleben" die Links nachher nicht aneinander. Der Unterschied mit liegt darin, dass die einzelnen Links nicht auf einer Linie gezwungen werden wenn unzureichend Platz da ist. Natürlich können Sie das nach Belieben ändern. */
    if &#40;$Seite < $SeitenZahl&#41;
    &#123;
      $EndeLink = ' Ende';
      if &#40;$Seite + 1 < $SeitenZahl&#41;
      &#123;
        $WeiterLink = ' Weiter';
      &#125;
    &#125; /* Genau wie Anfang- und zurück-Links gibt es auch die weiter- und Ende-Links. Diese werden nach dem gleichen Prinzip hinzugefügt&#58; wenn $Seite kleiner ist als $SeitenZahl, dann befindet der Besucher sich nicht auf der letzten Seite. Der Ende-Link wird dann automatisch hinzugefügt. Der weiter-Link wird nur hinzugefügt wenn $Seite plus eins kleiner ist als $SeitenZahl, dann befindet der Besucher sich noch nicht auf der vorletzten Seite und wird der weiter-Link auch hinzugefügt. */
    if &#40;$Seite - $NumerischeLinks > 1&#41;
    &#123;
      $AuslassungszeichenVorn = ' ...';
    &#125;
    if &#40;$Seite + $NumerischeLinks < $SeitenZahl&#41;
    &#123;
      $AuslassungszeichenHinten = ' ...';
    &#125;/* Jetzt werden noch die Variablen für die Auslassungszeichen &#40;...&#41; initialisiert. Diese werden dazu verwendet um die numerischen Angaben der Seiten zu trennen von die "zurück-" und "weiter-links". Diese dürfen nur verwendet werden wenn es mehr Seiten gibt als Links zur Anzeige davon.
    
    Die Berechnung erfolgt so&#58;
    - für das Auslassungszeichen links &#40;Beispiel&#58; '... 3 4 5 6 7'&#41;&#58; wenn $Seite minus $NumerischeLinks größer ist als 1, dann gibt es mindestens einen Link an der linken Seite der nicht sichtbar ist, und muss also das Auslassungszeichen links sichtbar sein.
    - für das Auslassungszeichen rechts &#40;Beispiel&#58; '3 4 5 6 7 ...'&#41;&#58; wenn $Seite plus $NumerischeLinks kleiner ist als $SeitenZahl, dann gibt es mindestens einen Link an der rechten Seite der nicht sichtbar ist, und muss also das Auslassungszeichen rechts sichtbar sein. */
    $Nav = $AnfangLink;
    $Nav .= $ZurueckLink;
    $Nav .= $AuslassungszeichenVorn;
    $Nav .= $SichtbareLinks;
    $Nav .= $AuslassungszeichenHinten;
    $Nav .= $WeiterLink;
    $Nav .= $EndeLink;
    print $Nav;/* Hier werden die einzelne Links &#40;wovon die HTML-Codes in verschiedene Variablen gespeichert sind&#41; zusammen gesetzt in der Variable $Nav. Dieser wird dann auf dem Bildschirm gezeigt. Dieses Stück Code können Sie an beliebiger Stelle auf Ihrer Seite stellen, jedoch muss es unter dem anderen PHP-Code stehen. */
    if &#40;$SeitenZahl > $Anzeige&#41;
    &#123;
      print "
    Seiten&#58; $SeitenZahl 
    Gehe zu Seite 
    ";
    
      echo '
      <form action="'.$url.'" method="post">
      <input type="text" size="3" name="Seite"></input>
      <input type="submit" value="Los"></input>
      <input type="hidden" name="Total" value="'.$Total.'"></input>
      </form>
      ';
    &#125;/* Zum Schluss soll noch das Formular hinzugefügt werden, so dass der Besucher eine beliebige Seite besuchen kann. Hierzu muss er dann einfach nur eine Zahl angeben. Natürlich hat dies nur Sinn wenn es mehr Seiten gibt als es Navigationslinks gibt. Die Zahl der Navigationslinks wurde vorher schon gespeichert in der Variablen $Anzeige. Wenn $SeitenZahl größer ist als $Anzeige, dann soll das Formular hinzugefügt werden. Das Formular hat einem Submit-Button, ein Textfeld für die Variable Seite und ein verstecktes Feld für die Variable Total. Natürlich werden auch hier die Daten an der selben URL geschickt.*/
    ?>
    </div>
    Wäre supi wenn sich das mal jemand anschauen könnte
    THX

    Burgerking
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Großmeister(in)
    Registriert seit
    27.09.2005
    Beiträge
    591
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    hier eine funktion die ich geschrieben hab um das zu machen :
    Code:
     function ausgabe&#40;$proseite = 5&#41; &#123;
    
    
                                 //----------------Anzahl der Beitr&auml;ge-------------------
                                 $counter_id = mysql_query&#40;" SELECT
                                                               COUNT&#40;id&#41; as 'anzahl'
                                                           FROM
                                                               `guestbook`"&#41; OR die&#40;mysql_error&#40;&#41;&#41; ;
    
                                 $counter   = mysql_fetch_assoc&#40;$counter_id&#41;;
    
                                 $beitraege = $counter&#91;'anzahl'&#93;  ;
                                 //----------------Anzahl der Beitr&auml;ge-------------------
    
    
    
    
                                 //------------------Seitenberechnung-------------------
                                 $seiten = $beitraege/$proseite;
                                 if&#40;  !&#40;is_int&#40;$seiten&#41;&#41;  &#41;&#123;
                                       $seiten += 1;
                                       $seiten = &#40;int&#41;$seiten ;
                                 &#125;
                                 //------------------Seitenberechnung-------------------
    
    
    
    
                                 //-----------------Limitberechnung----------------
                                 if&#40;!&#40;isset&#40;$_GET&#91;'guestbookpage'&#93;&#41;&#41;&#41;&#123;
                                        $_GET&#91;'guestbookpage'&#93; = 1 ;
                                 &#125;
    
                                 $limit_min =  &#40;$_GET&#91;'guestbookpage'&#93;-1&#41;*$proseite ;
                                 //-----------------Limitberechnung----------------
    
    
                                         $result = mysql_query&#40;" SELECT
                                                                     `entry`,
                                                                     `author`
                                                                 FROM
                                                                     `guestbook`
                                                                 ORDER BY id DESC
                                                                 LIMIT $limit_min,$proseite"&#41;;
    
                                         //-------------Eintrag ausgabe-------------------------
                                         while&#40;$row = mysql_fetch_assoc&#40;$result&#41;&#41;&#123;
    
                                              echo    "<div class=\"guestbook\">Autor &#58; "
                                              .$row&#91;'author'&#93;."<hr>"
                                              ." Beitrag &#58; ".$row&#91;'entry'&#93;
                                              ."</div>";
                                         &#125;
                                         //-------------Eintrag ausgabe-------------------------
    
    
                                         //-------------Seiten links------------------------
                                         echo "<div class=\"seiten\">"  ;
    
                                         for&#40;$i = 1;$i<=$seiten;$i++&#41;&#123;
                                                   echo "<a href=\"seiten.php?guestbookpage=".$i."\">  ";
                                                   if&#40;$i == $_GET&#91;'guestbookpage'&#93;&#41;&#123;
                                                           echo"<span class=\"seitenspan\">".$i."</span>";
                                                   &#125;
                                                   else&#123;
                                                           echo $i;
                                                   &#125;
                                                   echo "</a>   ";
                                         &#125;
                                         echo "</div>" ;
                                        //-------------Seiten links------------------------
                 &#125;
    im code is schon einiges erklärt. Wenn du aus der puren funktion nich schlau wirst, kannste mich alles dazu fragen.
    sie gibt unten seiten aus so wie es üblich ist und gibt die seite per get an
    als parameter werden beiträge pro seite angegeben
    lieber mal hier http://de.selfhtml.org nachgucken

  3. #3
    Gast

    Standard

    Erstmal vielen Dank.

    Habe deine Funktion meiner guestbook.php beigefügt und meine rausgeschmissen!

    Das gute zuerst, er schmeißt mir schonmal keine Fehlermeldung aus

    habe in den Bereich Eintrag ausgabe nun meine ausgabe hineinkopiert, nur leider gibt er mir nun die daten nicht mehr aus, das einzige was er mir anzeigt ist der Link zur beitragsverfassung!!!



    Code:
    <? ### Gästebuch Anfang ### ?>
    
    
    <?
    echo "<div align=\"center\">";
    echo "<h1>$ueberschrift</h1>";
    echo "</div>";
    echo "<title>$gbtitel</title>";
    ?>
    
    
    
    <div align="center"><? echo "<a href=\"index.php?section=eintrag\"><font color=\"$linkfarbe\">Eintrag verfassen</a></font>"; ?></div>
    
    
    <?php
    $dbh=mysql_connect&#40;"localhost","root","Telefonbuch"&#41;;
    mysql_select_db&#40;"gb",$dbh&#41;;
    // hier musst du dann eine verbindung zur datenbank herstellen, und die entsprechenden variablen einfügen &#40;pw, username, datenbankname etc&#41;
    ?>
    <div align="center"><? echo "<a href=\"index.php?section=eintrag\"><font color=\"$linkfarbe\">Eintrag verfassen</a></font>"; ?></div>
    
    <?
    echo "<body bgcolor=\"$hgfarbe\">";
    ?>
    
    <body onselectstart="return false" oncontextmenu="return false" ondragstart="return false">
    
    <?
    function ausgabe&#40;$proseite = 5&#41; &#123;
    
    
                                 //----------------Anzahl der Beitr&auml;ge-------------------
                                 $counter_id = mysql_query&#40;" SELECT
                                                               COUNT&#40;id&#41; as 'anzahl'
                                                           FROM
                                                               `gb`"&#41; OR die&#40;mysql_error&#40;&#41;&#41; ;
    
                                 $counter   = mysql_fetch_assoc&#40;$counter_id&#41;;
    
                                 $beitraege = $counter&#91;'anzahl'&#93;  ;
                                 //----------------Anzahl der Beitr&auml;ge-------------------
    
    
    
    
                                 //------------------Seitenberechnung-------------------
                                 $seiten = $beitraege/$proseite;
                                 if&#40;  !&#40;is_int&#40;$seiten&#41;&#41;  &#41;&#123;
                                       $seiten += 1;
                                       $seiten = &#40;int&#41;$seiten ;
                                 &#125;
                                 //------------------Seitenberechnung-------------------
    
    
    
    
                                 //-----------------Limitberechnung----------------
                                 if&#40;!&#40;isset&#40;$_GET&#91;'guestbookpage'&#93;&#41;&#41;&#41;&#123;
                                        $_GET&#91;'guestbookpage'&#93; = 1 ;
                                 &#125;
    
                                 $limit_min =  &#40;$_GET&#91;'guestbookpage'&#93;-1&#41;*$proseite ;
                                 //-----------------Limitberechnung----------------
    
    
                                         $result = mysql_query&#40;" SELECT
                                                                     `id`,
                                                                     `name`,
                                                                     `email`,
                                                                     `www`,
                                                                     `eintrag`
                                                                 FROM
                                                                     `gb`
                                                                 ORDER BY id DESC
                                                                 LIMIT $limit_min,$proseite"&#41;;
    
                                         //-------------Eintrag ausgabe-------------------------
    while&#40;$row = mysql_fetch_assoc&#40;$result&#41;&#41; &#123; ?>
    
    <?
    echo "<div align=\"center\">";
    echo "<table border=\"1\" width=\"60%\">";
    echo "<tr>";
    echo "<td align=\"left\" bgcolor=\"$infofarbe\">Nr&#58;\n";
    echo $row&#91;'id'&#93;;
    echo "</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td align=\"left\" bgcolor=\"$infofarbe\">Name&#58;\n";
    echo $row&#91;'name'&#93;;
    echo "</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td align=\"left\" bgcolor=\"$infofarbe\">E-Mail&#58;\n";
    echo "<a href=\"mailto&#58;".$row&#91;'email'&#93;."\">schreiben</a>";
    echo "</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td align=\"left\" bgcolor=\"$infofarbe\">Homepage&#58;\n";
    echo " <a href=\"".$row&#91;'www'&#93;."\">Hier klicken</a>";
    echo "</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td align=\"center\" bgcolor=\"$txtareafarbe\">";
    echo $row&#91;'eintrag'&#93;;
    echo "</td>";
    echo "</tr>";
    echo "</table>";
    echo "</div>";
    echo "
    ";
    &#125;
    ?>
    <div align="center"><? echo "<a href=\"index.php?section=eintrag\"><font color=\"$linkfarbe\">Eintrag verfassen</a></font>"; ?></div>
    
    <?
                                         //-------------Eintrag ausgabe-------------------------
    
    
                                         //-------------Seiten links------------------------
                                         echo "<div class=\"seiten\">"  ;
    
                                         for&#40;$i = 1;$i<=$seiten;$i++&#41;&#123;
                                                   echo "<a href=\"guestbook1.php?guestbookpage=".$i."\">  ";
                                                   if&#40;$i == $_GET&#91;'guestbookpage'&#93;&#41;&#123;
                                                           echo"<span class=\"seitenspan\">".$i."</span>";
                                                   &#125;
                                                   else&#123;
                                                           echo $i;
                                                   &#125;
                                                   echo "</a>   ";
                                         &#125;
                                         echo "</div>" ;
                                        //-------------Seiten links------------------------
                 &#125;
    ?>

  4. #4
    Großmeister(in)
    Registriert seit
    27.09.2005
    Beiträge
    591
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    ich glaub du hast da was falsch verstanden die funktion musst du auch noch aufrufen! Die funktion muss, so wie ich sie gepostet hab, mit den für dich abgeänderten Daten im .inc file oder auf der Seite sein und dann musst du sie mit ausgabe() ; bzw. ausgabe(anzahl der beiträge proseite); aufrufen, an der stelle an der die seitenzahlen stehen sollen.
    lieber mal hier http://de.selfhtml.org nachgucken

  5. #5
    Gast

    Standard

    Vielleicht kannst du mir ein wenig helfen, bin noch nicht so der Profi darin.

    Das Gästebuch bekomme ich ohne Probleme hin nur mit der Seiten ausgabe klappts nit so wirklich. Bin noch recht neu auf dem Gebiet.

    habe das ganz jetzt noch mal neu gemacht, aber irgendwo hat sich ein Fehler eingeschlichen und so wie ich mich kenne ist dieser ganz simpel!

    Habe dir mal guestbook.php als txt datei angehangen.

    Wenn es dir nichts ausmacht, kannst ja mal ein augedrauf werfen und mir ein wenig dabei helfen!!!!
    Angehängte Dateien Angehängte Dateien
    • Dateityp: txt gb.txt (2,3 KB, 38x aufgerufen)

  6. #6
    Großmeister(in)
    Registriert seit
    27.09.2005
    Beiträge
    591
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    hier der code ich habs jetzt einfach so ein den code eingebaut ohne funktion is aber ungetestet sollte aber tun wenn nich melde dich
    Code:
    <? ### Gästebuch Anfang ### ?>
    <title>Gästebuch</title>
    <div align="center"><? echo "<a href=\"index.php?section=eintrag\"><font color=\"$linkfarbe\">Eintrag verfassen</a></font>"; ?></div>
    
    <?php
    $dbh = mysql_connect&#40;"localhost","root","Telefonbuch"&#41;;
    mysql_select_db&#40;"gb",$dbh&#41;;
    // hier musst du dann eine verbindung zur datenbank herstellen, und die entsprechenden variablen einfügen &#40;pw, username, datenbankname etc&#41;
    
    
    
                                  $proseite = 5 ;//hier eintragen wieviel beiträge pro seite
    
    
                                 //----------------Anzahl der Beitr&auml;ge-------------------
                                 $counter_id = mysql_query&#40;" SELECT
                                                               COUNT&#40;id&#41; as 'anzahl'
                                                            FROM
                                                               `gb`"&#41; OR die&#40;mysql_error&#40;&#41;&#41; ;
    
                                 $counter   = mysql_fetch_assoc&#40;$counter_id&#41;;
    
                                 $beitraege = $counter&#91;'anzahl'&#93;  ;
                                 //----------------Anzahl der Beitr&auml;ge-------------------
    
    
    
    
                                 //------------------Seitenberechnung-------------------
                                 $seiten = $beitraege/$proseite;
                                 if&#40;  !&#40;is_int&#40;$seiten&#41;&#41;  &#41;&#123;
                                       $seiten += 1;
                                       $seiten = &#40;int&#41;$seiten ;
                                 &#125;
                                 //------------------Seitenberechnung-------------------
    
    
    
    
                                 //-----------------Limitberechnung----------------
                                 if&#40;!&#40;isset&#40;$_GET&#91;'guestbookpage'&#93;&#41;&#41;&#41;&#123;
                                        $_GET&#91;'guestbookpage'&#93; = 1 ;
                                 &#125;
    
                                 $limit_min =  &#40;$_GET&#91;'guestbookpage'&#93;-1&#41;*$proseite ;
                                 //-----------------Limitberechnung----------------
    
    
                                         $result = mysql_query&#40;" SELECT
                                                                         id,
                                                                          name,
                                                                            email,
                                                                           www,
                                                                         eintrag
                                                                 FROM
                                                                          gb
                                                                 ORDER BY id DESC
                                                                 LIMIT $limit_min,$proseite"&#41;;
    
                                         //-------------Eintrag ausgabe-------------------------
                                         while&#40;$row = mysql_fetch_assoc&#40;$result&#41;&#41;&#123;
    
                                               echo "<div align=\"center\">";
                                               echo "<table border=\"1\" width=\"60%\">";
                                               echo "<tr>";
                                               echo "<td align=\"left\" bgcolor=\"$infofarbe\">Nr&#58;\n";
                                               echo $row&#91;'id'&#93;;
                                               echo "</td>";
                                               echo "</tr>";
                                               echo "<tr>";
                                               echo "<td align=\"left\" bgcolor=\"$infofarbe\">Name&#58;\n";
                                               echo $row&#91;'name'&#93;;
                                               echo "</td>";
                                               echo "</tr>";
                                               echo "<tr>";
                                               echo "<td align=\"left\" bgcolor=\"$infofarbe\">E-Mail&#58;\n";
                                               echo "<a href=\"mailto&#58;".$row&#91;'email'&#93;."\">schreiben</a>";
                                               echo "</td>";
                                               echo "</tr>";
                                               echo "<tr>";
                                               echo "<td align=\"left\" bgcolor=\"$infofarbe\">Homepage&#58;\n";
                                               echo " <a href=\"".$row&#91;'www'&#93;."\">Hier klicken</a>";
                                               echo "</td>";
                                               echo "</tr>";
                                               echo "<tr>";
                                               echo "<td align=\"center\" bgcolor=\"$txtareafarbe\">";
                                               echo $row&#91;'eintrag'&#93;;
                                               echo "</td>";
                                               echo "</tr>";
                                               echo "</table>";
                                               echo "</div>";
                                               echo "
    ";
                                         &#125;
                                         //-------------Eintrag ausgabe-------------------------
    
    
                                         //-------------Seiten links------------------------
                                         echo "<div class=\"seiten\">"  ;
    
                                         for&#40;$i = 1;$i<=$seiten;$i++&#41;&#123;
                                                   echo "<a href=\"seiten.php?guestbookpage=".$i."\">  ";
                                                   if&#40;$i == $_GET&#91;'guestbookpage'&#93;&#41;&#123;
                                                           echo"<span class=\"seitenspan\">".$i."</span>";
                                                   &#125;
                                                   else&#123;
                                                           echo $i;
                                                   &#125;
                                                   echo "</a>   ";
                                         &#125;
                                         echo "</div>" ;
                                        //-------------Seiten links------------------------
                                        //die seitenlinks kann man über die css klassen stylen
    
    
    
    ?>
    lieber mal hier http://de.selfhtml.org nachgucken

  7. #7
    Gast

    Standard

    Spitze es hat Funktioniert!!!!!

    Ich danke dir Vielmals

    Darauf erstmal ein

    Und für dich natürlich auch eins

Ähnliche Themen

  1. MYSQL --> GROUP BY --> ANZAHL
    Von Ivanman im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 07.11.2007, 12:49
  2. Anzahl Downloads einbinden
    Von mÖp im Forum HTML & CSS Forum
    Antworten: 7
    Letzter Beitrag: 15.09.2006, 01:56
  3. anzahl der elemente für gruppenbildung...
    Von driver im Forum Computer - Internet Forum
    Antworten: 0
    Letzter Beitrag: 19.04.2006, 14:18
  4. Anzahl der download limitieren
    Von MartinP im Forum HTML & CSS Forum
    Antworten: 0
    Letzter Beitrag: 04.07.2005, 11:59
  5. Gästebuch - einzelne Seiten
    Von MAD im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 6
    Letzter Beitrag: 11.11.2004, 12:24

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •