problem bei G-book help pls

marvid

Mitglied
also, ich habe vogendes problem.
ich habe dieses guestbook, klappt auch alles einwandfrei, nur das ich gerne hätte das es auf verschiedene seiten ausgelegt wird. also jede 10 beiträge eine neue seite.
kann mir da bitte jemand helfen?
oder is das bei deinem dateibasierenden gb überhaupt möglich?

bin für jede antwort dankbar :)
PHP:
<html>
<head>
<title>GuEStBooK</title></head>
<body bgcolor="#ffffff">

<?


// Hier wird das Formular ausgegeben

echo '<form name="beitrag_eintragen" action="'.$PHP_SELF.'" methode="post">
      <table width="100" border="0" cellspacing="1" align="center">

      <tr>
      <td width="224" valign="middle">
      <input type="text" name="name" value="Name" class="gb"></td>
      </tr>
      <tr>

      <td width="224" valign="middle">
      <input type="text" name="email" maxlenght="20" value="@" class="gb"></td>
      </tr>
      <tr>
      <td width="224" valign="middle">
      <input type="text" name="http" value="http://" class="gb"></td>
      </tr>
      <tr>
      <td width="224">
      <textarea name="text" cols="19" rows="6" class="gb">Beitrag</textarea></td>
      </tr>
      <tr>
      <td width="224">&nbsp;</td>
      </tr>
      <tr>
      <td colspan="2"><div align="center">
      <input type="submit" name="button" value="Sign in" class="gb">
      </div></td>
      </tr>
      </table>
      </form>';

// Nachdem sich User eingetragen hat

if($button) {
      if($name != '' && $text != '' && $email != '' && $http != '') {
           // Das aktuelle Datum ermitteln
           $datum = date('d.m.Y');

           // Text in HTML-Text ändern
           $text = str_replace("\r\n", "<br>", $text);

           // Hier wird der aktuelle Beitrag ganz oben eingefügt
           $fp = fopen('gaestebuch.txt', 'r');
           // Setze neuen Beitrag zusammen
           $input .= "$datum | $name | $email | $text | $http\n";
           // Lese alte Einträge aus
           while (!feof($fp)) {
                           $input .= fgets($fp, 500);
           }
           fclose($fp);

           // Hier wird der Inhalt in die Datei geschrieben
           $fp = fopen('gaestebuch.txt', 'w+');
           fputs($fp, $input, strlen($input));
           fclose($fp);

           // Bestätigung des der Beitrag aufgenommen ist
           echo '<p align="center">Besten Dank für Ihren Beitrag!<br>
           <a href="'.$PHP_SELF.'">Eintrag ansehen</a></p>';

      } else {

          echo '<p align="center">Bitte alle mit (*) markierten Felder ausfüllen!<br>
          <a href="javascript:history.back()">Zurück zum Formular</a>';

         }

// Wenn User noch nichts eingegeben hat

} else {
      $fp = fopen('gaestebuch.txt', 'r');
      while (!feof($fp)) {
           $zeile = fgets($fp, 500);
           $daten = explode(" | ", $zeile);
           $datum = $daten[0];
           $name = $daten[1];
           $email = $daten[2];
           $text = $daten[3];
           $http = $daten[4];
           
           
           // Gib einzelne Beiträge in einer Tabelle aus
           echo '<table width="280" border="0" align="center">
           <tr bgcolor="#5282A9"><td>
           <p><b><a href="mailto:'.$email.'?subject=Ich komme vom Cy7eC Guestbook">'.$name.'</a> - <a href="'.$http.'" target="_new">Homepage</a></b>-
           '.$datum.'</p></td></tr>
           <tr><td><p>'.$text.'</p></td></tr>
           <tr><td>&nbsp;</td></tr>
           </table>';
      }
      fclose($fp);
}

?>

</body></html>
 

deepgreen

Erfahrenes Mitglied
klar ist es möglich ich habe gestern auf die schnelle sowas geschrieben, wenn du willst kann ich dir ja meins schicken.

ich musste auch recht lange überlegen wie ich das ganze realisieren kann, aber es klappt wunderbar.
 

deepgreen

Erfahrenes Mitglied
kein problem, hier der komplette code, bitte ignoriert die ganzen formatierungsvariablen einfach!!

kurze erklärung:

c1 = gestamte anzahl der einträge
cc = anzahl der beiträge auf einer seite
ccc = ist der startwert der nächste seite

-----------

PHP:
<?php

require("./gb_config.php");
$dxo=explode("|",$dx);

echo "$dxo[5]<a href=\"./links.php?action=gb_view\" target=\"_parent\">Gästebuch</a>$dxo[6]$dxo[7]Einträge$dxo[8]<br><br>";

if($ccc==""){$ccc=1;}


echo "<div align=center><font size=2><a href=\"./links.php?action=gb_add\">Gästebucheintrag</a></font></div><br>"; 

$fdb=file_exists("./gbdb.php");


if($fdb==1)
  {
	$cfile=file("./gbdb.php");
	$c1=count($cfile);
        $dxo[4]=trim($dxo[4]);
	$cc=$dxo[4]; 
   $fp = fopen("./gbdb.php","r");
   $k=0;
   while($buffer=fgets($fp,4096))     
        {
         $k++;
         $xk=$c1+1-$k;
	 if($k>=$ccc && $k<=($ccc+$cc)-1){
	 $ds=explode("|",$buffer);
         $x=floor($k/2)*2;
	 if($x==$k){echo "<table border=\"0\" width=\"100%\" bgcolor=\"$dxo[11]\">";}
	 else {echo "<table border=\"0\" width=\"100%\" bgcolor=\"$dxo[12]\">";}
         echo "
		  <tr> 
		    <td width=\"87%\"><b><a href=\"mailto:$ds[2]\"><font size=2>$ds[1]</font></a></b></td>
		    <td width=\"5%\"><font size=1>$ds[5]</font></td>
		    <td width=\"3%\"><div align=\"right\"><font size=1>$ds[6]</font></div></td>
		    <td width=\"5%\"><div align=\"center\"><font size=1><b>$xk</b></font></div></td>
		  </tr>
		  <tr> 
		    <td colspan=\"4\"><font size=2>$ds[3]</font></td>
		  </tr>
		</table><br>";
}         
        
        } 
 fclose($fp);
         $omg=$cc;
         $y=0;
         echo "$dxo[9]Seite: ";
         for($i=1;$i<=$c1;$i=$i+$cc)
            {
             $omg2=$omg-$cc+1;
             $y++; echo "<a href=\"./links.php?action=gb_view&ccc=$omg2\" target=\"_parent\">$y</a> "; $omg=$omg+$cc;

            }
         echo "$dxo[10]";                                  
   }
else {echo "Keine Datenbank gefunden.";}

?>