Gästebucheinträge pro Seite begrenzen

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

  • Gästebucheinträge pro Seite begrenzen

    Hallo zusammen...

    ich würde gern die Anzahl der Gästebucheinträge pro Seite begrenzen,
    also das nach 10 oder max. 20 Einträgen automatisch eine neue Seite begonnen wird.

    In Euern Tutorials habe ich etwas gefunden, was die Nummerierung der Einträge angeht,
    aber mit der Begrenzung komm ich nicht weiter.

    PHP-Code:
    // Gäste zählen
    $nummer_lesen=fopen("text/gaestezahl.txt""r");
    $zahl=fgets($nummer_lesen10);
    $zahl=trim($zahl);
    $zahl++;
    $nummer_schreiben=fopen("text/gaestezahl.txt""w");
    fwrite($nummer_schreiben$zahl); 
    Bin PHP-Neuling und Datenbanken sind ein Graus für mich, also bitte keine Lösungsvorschläge mit Datenbanken! thx
    LG Nala

  • #2
    erst suchen, dann posten! suchbegriffe:
    - seitenweise
    - blättern
    - pagination

    http://www.php-resource.de/forum/sho...threadid=58153

    und

    Kommentar


    • #3
      Natürlich hab ich gesucht...

      und der andere Thread hilft mir leider auch nicht weiter.
      LG Nala

      Kommentar


      • #4
        Original geschrieben von Nala
        Natürlich hab ich gesucht...
        aber evtl nicht nach den richtigen begriffen?

        Original geschrieben von Nala
        und der andere Thread hilft mir leider auch nicht weiter.
        wieso nicht? das ist genau das, was du brauchst.
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          Wenn ich dir helfen soll, dann müsstest du mir noch deine Speicherstruktur vorgeben.

          Hast du je Zeile ein Eintrag oder Trennst du alle Einträge anhand eines Trennzeichens?

          vor Allem was soll der Code überhaupt?
          PHP-Code:
          $zahl=fgets($nummer_lesen10);
          $zahl=trim($zahl);
          $zahl++; 
          les doch erstmal im Manual, was fgets überhaupt macht. Ich glaube nicht, dass du nur die ersten 10 Zeichen deiner Datei auslesen möchtest, geschweigedenn, dass du diese 10 Zeichen dann + 1 rechnen möchteste (gibt irgendwie keinen sinn )!


          Edit: www.php.net/fgets

          Kommentar


          • #6
            Ähm, ich sagte doch, das das noch Neuland für mich ist?

            Mit diesem Codeschnipsel habe ich die Nummerierung der GB-Einträge verwirklicht... allerdingst gehörte da noch was anderes zu, welches ich nicht in meinen Code eingebaut habe, denn hat hat nichts mehr funktioniert.

            Leider weiss ich nicht, wie ich es anders beschreiben soll, ich stell den Rest von dem Auschnitt aus dem Tuturial auch nochmal ein.
            Habe nochmal geschaut, ist von dieser Seite.

            PHP-Code:
            $alteEintraege=file("gaeste.txt");
            $AnzahlDerEintraege=count($alteEintraege);
            $eintraege="$eintrag$alteEintraege[0]";
            for (
            $z=1$z<$AnzahlDerEintraege$z++)
            {
            $eintraege="$eintraege$alteEintraege[$z]";
            }
            $datei=fopen("gaeste.txt""w");
            fwrite ($datei$eintraege); 
            Mein Script ist si gaaanz ander aufgebaut, deshalb hab ich Schwierigkeiten, dies dort zu integrieren. Meine Einträge speicher ich in einer Datei namens einträge.htm, wenn ich da auch noch mit [B]gaeste.txt[/ B] anfange krieg ich Fehlermeldungen. Wenn ich's weglasse, funktioniert wenigstens die Nummerierung.

            Hast du je Zeile ein Eintrag oder Trennst du alle Einträge anhand eines Trennzeichens?
            Ich weiss nicht, ob ich Dich richtig verstehe... jeder Eintrag kommt in eine seperate Tabelle.

            THX
            LG Nala

            Kommentar


            • #7
              Vielleicht solltest du dir erstmal die PHP-Grundlagen anschauen.
              http://schattenbaum.net/php/ - ganz gute Seite...
              Ansonsten poste doch bitte mal das komplette Script und das Format wie die Einträge in der Datei gespeichert werden.
              jeder Eintrag kommt in eine seperate Tabelle.
              - Das musst du mir nochmal genauer erklären.
              MfG,
              MrBona

              Kommentar


              • #8
                Mit PHP-Datei-Ooperationen kenn ich mich ned so aus,
                aber ich würde dir in etwa folgendes Vorschlagen.

                Lies die Datei (also die Einträge) in einen Array ein.
                Anhand des Indexes kannst du dann die Anzeige Limitieren.

                Falls notwendig kannst du ja mehrere Arrays verwenden, oder einen Mehrdimensionalen (PHP Manual hat gute Beispiele, und hier findest du bestimmt auch schon diesbezügliche Beiträge).

                Hoffe das hilft.

                Gruss Arjuna
                C = Constant
                A = And
                N = Neverending
                I = Improvement

                Kommentar


                • #9
                  Original geschrieben von Arjuna
                  Lies die Datei (also die Einträge) in einen Array ein.
                  Anhand des Indexes kannst du dann die Anzeige Limitieren.
                  Also davon würde ich dir abraten, weil angenommen du hast 3000 Einträge, dann belastest du unnötig die Performance..
                  Also ich würde es folgendermaßen machen:[list=1][*]informier dich über die funktionen, die speziell zum auslesen von dateien zur verfügung gestellt werden. sprich : fread(..) | fget(..) | fgets(..) | fseek(..)[*]anhand der eingelesenen zeichen kannst du die position festlegen und mit fseek(..), beim blättern, an den zuletzt eingelesen beitrag in der datei springen.[*]die position kannst du in ner session ablegen und somit beim blättern updaten[/list=1]
                  greatz
                  rl

                  Kommentar

                  Lädt...
                  X