Ankündigung

Einklappen
Keine Ankündigung bisher.

Textdatei auslesen und auf mehrere Seiten verteilen?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Textdatei auslesen und auf mehrere Seiten verteilen?

    Hi,

    ich habe ein PHP-Gästebuch, bei dem die Einträge in einer .dat Datei gespeichert sind.

    Diese lese ich mit folgendem Code aus:

    PHP-Code:
    <?php
    $datenbank 
    "daten.dat";
    $datei fopen($datenbank,"r");
    fpassthru($datei);
    ?>
    gibt es ne möglichkeit die ausgelesenen Daten auf mehrere Seiten zu verteilen? Sodass ich immer nur 10 Einträge auf einer Seite habe und danach unten Seite 1, 2, 3, 4, usw. steht um auf die anderen Seiten zu kommen?

  • #2
    gibt es ne möglichkeit die ausgelesenen Daten auf mehrere Seiten zu verteilen?
    Ja gibt es. Und wenn du mal die Suchfunktion benutzen würdest, könntest du sogar einen Quellcode finden, der dir weiterhilft.

    Gruß
    phpfan

    Kommentar


    • #3
      hier ein uraltes Muster (aus meiner Fundstücksammlung):
      http://www.php3-forum.de/forum.php3?nr=47165&site=0
      http://www.php3-forum.de/forum.php3?nr=47167&site=0
      ~dilemma~

      Kommentar


      • #4
        habe jetzt diesen code hier:
        PHP-Code:
        <?php


        // Default-Werte:
        $datei            ="daten.dat";
        $entries_per_page =10;

        // Default f. id setzen:
        if(!isset($id) || ($id%$entries_per_page>0) || ($id>$gesamt))
        $id=0;

        // Gesamtanzahl d. Einträge ermitteln;
        $gesamt=count($datei);

        // Weiter-Link:
        if(($id+$entries_per_page)<$gesamt)
        echo 
        "<a href=\"$PHP_SELF?id=".($id+$entries_per_page)."\">Weiter</a>\n";

        // Zurück-Link:
        if($id>=$entries_per_page)
        echo 
        "<a href=\"$PHP_SELF?id=".($id-$entries_per_page)."\">Zurück</a>\n";

        // Daten:
        $Data=array_slice(file($datei),$id,$entries_per_page);

        foreach(
        $Data as $entry)
        echo 
        $entry."
        \n"
        ;

        ?>
        Leider funktioniert der nicht. Bleibt alles weiterhin auf einer Seite.

        Habe mir aber mal die daten.dat angeguckt im Editor. Dort sind alle Werte in einer Zeile geschrieben, hintereinander. Kann das daran liegen?

        Kommentar


        • #5
          ok, es lag wirklich daran, dass es nicht in mehreren Zeilen geschrieben war.
          Habe jetzt aber ein weiteres Problem. Das Script funktioniert fast, es zeigt nur noch die angegebene Zahl der Beiträge an ABER es zeigt keinen weiter oder zurück link an.

          Kommentar

          Lädt...
          X