Flatfile-Gästebuch auf Seiten verteilen

robertino

Mitglied
Hallo

Also ich habe da schon verschiedene Suchwötrer probier um an das richtige Resultat zu gelangen, doch ich hab nur dieses Tut gefunden: ansehen , da es aber bei diesem beisiel gar nicht funktioniert und die erklärung nicht pausibel ist, möchte ich nicht an was falschem herumprobieren.

Also nun zum Thema: Ich möchte gerne Seitenzahlen in mein Gästebuch einbauen, das schon vorhanden ist. Ich werde gleich noch Teile psoten. Aber zuerst zum GB es wird eben nicht in einer MYSQL Datenbank die Einträge abspeichern sondern in einer einfachen Textdatei.

Ich denke die Forumlardaten sind net so wichtig darum hier mal wie es gespeichert wird:

PHP:
<?php
        $datei = "book/page.txt";
        if (isset($beitrag) && $title != "") {
        $zeiger=fopen($datei,"r+");
        $alt=fread($zeiger,filesize($datei));
        $datum=date("j.n.Y");
        $time=date("H:i:s");
        $meinung="$title#$name#$datum#$time#$email#$homepage#beitrag";
        rewind($zeiger);
        fputs($zeiger,"$meinung \n $alt");
        fclose($zeiger);
}
?>


PHP:
<?php
$datei = fopen("book/page.txt", "r") ;
while (!feof($datei)) {
 $zeile = fgets($datei, 1500) ;
 $eintrag = explode("#", trim($zeile)) ;
// Auslesen jetzt abgeschlossen,
// es folgt das Einsetzen in die Tabelle
?>

Titel: <?php echo $eintrag[1]; ?> | Name: <?php echo $eintrag[2]; ?> | ...

<?php
} // Ende der while-Schleife
fclose($datei) ;?>


Also es wäre seh nett wenn ihr mir da helfen könntet
 
Du kannst die Blätterfunktionen (Suchwort!) die über MySQL geschrieben sind in begrenztem Maße portieren.
Ich denke, Du kommst nicht umhin, alle Deine Eniträge erstmal in ein zweidimensionales Array einzulesen.
Das sollte so aussehen:
Code:
$gb[0] = array();
$gb[0]['titel']='Titel zu Beitrag 1';
$gb[0][...]='...';

$gb[1] = array();
$gb[1]['titel']='Titel zu Beitrag 2';
$gb[1][...]='...';

...
Wenn ich mir Dein Skript anschaue solltest Du vor Deiner while-Schleife $gb=array() machen und in der while-Schleife $gb[] = $eintrag.
Ausgeben tust Du hier noch nichts.
Nach der while-Schleife machst Du die folgenden Schritte:
Du nutzt die viel beschriebenen Möglichkeiten, um den Link auf die nächste bzw. vorige Seite zu ermitteln. Das habe ich schonmal hier beschrieben.
Statt numrows musst Du [phpf]sizeof[/phpf] von $gb nehmen. Was $proseite bedeutet sollte klar sein.
Statt LIMIT in SQL reduzierst Du mit [phpf]array_slice[/phpf].
Dann hast Du die Einträge dieser Seite.
Mit [phpf]foreach[/phpf] kannst Du diese dann ausgeben.

Ich hoffe das hilft Dir weiter.

Gruß hpvw
 
Zuletzt bearbeitet:
Zurück