und hier der script.
Wenn ihr den Fehler finden koenntet, waere ich euch sehr dankbar !
Ich bin nur ein Anfaenger, darum bitte ich euch einfach auszudrueken,
sonst verstehe ich nur bahnhof !!!
Bei dem Code ist es kein Wunder, daß Du nichts verstehst. Ein wirklich gut gemeinter Rat: Gib Dir deutlich mehr Mühe beim Programmieren. Entwickle eine übersichtliche Textstruktur und plane vor allen Dingen im Voraus, wie Dein Programmablauf aussehen soll. Dann wird Dir so ein Chaos, wie das da unten, nicht mehr passieren. Warum Chaos? Bittesehr:
<?php
include("gaestebuch.txt");
Das ist mir schon schleierhaft, warum holst Du die Daten in die Seite? Gehört das zur Fehlersuche? Wenn ja, schreib's dahinter.
$gbfile = "gaestebuch.txt"; // die datei, wo die Eintraege gespeichert werden
$filesize = filesize($gbfile);
$file = fopen("$gbfile","r");
$buffer = fread($file,$filesize);
fclose($file);
$data = file("$gbfile");
$max = count($data);
if($max%10 ==0) {$pages = ($max / 10 );}
else{$pages = ($max / 10 );}
So sieht das besser aus..
if($max%10 ==0)
{
$pages = ($max / 10 );
}
else
{
$pages = ($max / 10 );
}
..und dann erkennt man auch gleich, daß diese if-Abfrage sinnlos ist.
$size = (filesize($gbfile) / 1024);
if(filesize($gbfile) == 0) { $max = "1"; }
echo "<center>entries: $max, pages: " . round($pages, 0) . ", size: " . round($size, 2) . "kB<p>";
$msg = 10;
$data = file("$gbfile");
Schon wieder? Du lädst die Datei jetzt zum dritten Mal.. Und den Inhalt von $buffer hast Du immernoch nicht benutzt.
rsort ($data);
Warum sortierst Du die Zeilen aus gaestebuch.txt? Das macht bei der Struktur absolut keinen Sinn, sondern stiftet nur Chaos.
$max = count($data);
Kommt mir auch sehr bekannt vor.
If(!$pg){$pg=0;}
If($pg==0){print("<center>back");}
else{$tmp = $pg -1; print("<center>< <a href="$PHP_SELF?pg=$tmp">back</a>");}
Nochmal: Deine Tastatur verfügt über je eine Taste für Leerzeichen und Zeilenvorschub. Nutze sie.
$tmp = $pg * $msg + $msg;
print(" | ");
if ($max > $tmp){$tmp = $pg +1; print ("<a href="$PHP_SELF?pg=$tmp">next</a> ><p>");}
else {print("next<p>");}
$start = $pg * $msg;
$end = $pg * $msg + $msg;;
if ($end > $max){$end=$max;}
Werden $start und $end noch irgendwo benutzt? Nein? Warum erzeugst Du sie dann?
?>
</font>
</body>
</html>
Oha. Nun hast Du zwar mit viel Aufwand Vor- und Zurück-Knöpken ausgegeben, aber irgendwas fehlt in dem Gewimmel doch? Richtig, vielleicht solltest Du die Daten aus dem Gästebuch auch noch seitenweise ausgeben..
Gruß,
soenk.e