Sven: Dateien in PHP verlinken

Guten Tag!

Ich bin gerade dabei mir ein PHP ein bisschen ausführlicher zu Gemüte zu führen.

Aus diesem Grund habe ich mir ein einfaches Tutorial für ein PHP Gästebuch gesucht: ( http://www.phpbox.de/php_tutorials/gaestebuch1.php ). Dieses habe ich nun durch die Funktion erweitert, dass eine neue Datei erstellt wird, wenn mehr als 20 Einträge auf einer Seite vorhanden sind.

Nun habe ich folgendes Problem:

Wie verlinke ich Seite 2 und 1, wenn ich mich auf Seite 3 befinde?
Bzw. Befinde ich mich auf Seite 2 Sollen Links zu Seite 1 und, falls vorhanden, Seite 3 erscheinen. Selbiges gilt natürlich auch für Seite 1 und ggf 2.

Ich würde mich über eine reine PHP Lösung freuen. MYSQL o.Ä. soll in diser Übung für mich kein Zeil darstellen ;-)

folgendende Dateien + Quelltext habe ich erstellt:

eintragen.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
<html>  
<head>  
<title>übungs-Gästebuch</title>  
<meta name="author" content="Sven">  
<meta name="editor" content="html-editor phase 5">  
</head>  
<body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">  
  
  
<form method="get" action="gb.php">  
  
Dein Name: <input type="text" name="name"><br>  
  
eMail: <input type="text" name="email"><br>  
  
Dein Eintrag: <textarea name="eintrag"></textarea><br>  
  
<input type="submit" name="Button" value="Absenden">  
  
</form>  
  
  
</body>  
</html>

gb.php

  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
<html>  
<head>  
<title>Übungs-Gästebuch</title>  
<meta name="author" content="Sven">  
<meta name="editor" content="html-editor phase 5">  
</head>  
<body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">  
  
  
<?php  
  
  
         if(empty($_GET['name']) || empty($_GET['email']) || empty($_GET['eintrag']))  
  
                 {  
         echo 'Du hast vergessen alle Felder auszufüllen <br> <INPUT TYPE="button" VALUE="Back" onClick="history.back(-1);">'  ;  
                 }  
  
             else  
                 {  
  
  
  
  
                         $nummer_db = fopen("nummer.dat","r");  
                         $aktuell_nummer = fread($nummer_db, 4);  
  
                         $alle_daten="Eintrag Nr " .$aktuell_nummer ." von <a href=mailto:".$_GET[email].">".$_GET[name]."</a><br> hat am " .date("d m y")." folgenden Eintrag hinterlassen<br>".$_GET[eintrag]."<br><br>".'<hr width="100%">';  
  
                         $eintrag_umbrechen_open = fopen("nummer.dat","r");  
                         $eintrag_umbrechen = fread($eintrag_umbrechen_open,2);  
  
                         if($eintrag_umbrechen <= 19)  
                                 { $seite = 1 ; }  
                                         elseif($eintrag_umbrechen >= 20 && $eintrag_umbrechen <= 39)  
                                                { $seite = 2 ; }  
                                         else { $seite = 3 ; }  
  
  
                         $datenbank = "gb".$seite.".dat";  
                         $datei = fopen($datenbank,"a");  
                         fwrite($datei, $alle_daten);  
  
                         echo $datei = fopen($datenbank,"r");  
                         fpassthru($datei);  
  
                         $aktuell_nummer++   ;  
  
                         $nummer_db = fopen("nummer.dat","w");  
                         fwrite($nummer_db, $aktuell_nummer) ;  
  
  
  
              }  
         ?>  
  
</body>  
</html>

Mir ist klar, dass ich ein sehr statisches Gästebuch schreibe, aber mir geht es nur um das Verstehen der Vorgänge ;-)

MfG

  1. Hallo

    schau dich mal nach dem Stichwort "Blätterfunktion" um.
    Also kleiner Ansatz:

    Du musst irgendwo eine Variable mit der Seitenzahl an die URL übergeben und sie dann wie deine anderen per GET auswerten.

    $link_next= "<a href="gbuch.php?pos=" . $new_pos_next >next >></a>";

    $link_prev= "<a href="gbuch.php?pos=" . $new_pos_prev ""><< zurück </a>";

    viele Grüße
    hawk