Ankündigung

Einklappen
Keine Ankündigung bisher.

einfaches gb auf textfile basierend

Einklappen

Neue Werbung 2019

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

  • einfaches gb auf textfile basierend

    hi leute,

    da ich ja selber (noch) kein profi bin, stell ich jetzt den leuten ne frage, die das schon können. wie erstell ich en einfaches gb, das auf ne *.txt datei basiert und die dann auf meiner seite angezwigt wird? ich weiß (gerade noch), dass ich die datei "book.txt" auf meine page includen kann, mehr aber auch nicht. ich hab mir das so vorgestellt: "zeigen.php" enthält den include() befehl, der die *.txt datei anzeigt. "schreiben.php" ist das eingabeformular. eine admin-datei zur verwaltung/editieren/löschen der einträge hab ich schon erstellt

    Code:
    $filename="file.txt"; 
    if($action=="Speichern"){ 
    $n_content = stripslashes($n_content); 
    $fpn = @fopen($filename, "w"); 
    if ($fpn) { 
    fwrite($fpn, $n_content); 
    fclose($fpn); 
    } 
    } 
    $fpo = @fopen($filename, "r"); 
    if ($fpo) { 
    $o_content = fread($fpo, filesize($filename)); 
    $o_content = htmlspecialchars($o_content); 
    fclose($fpo); 
    } 
    ?> 
    <form action="<? echo $_SERVER[PHP_SELF]; ?>" method="POST"> 
    <input type="submit" name="action" value="Speichern" >
     
    <textarea name="n_content" wrap="off" rows="10" cols="100"><? echo $o_content; ?></textarea> 
    </form> 
    </body> 
    </html>
    der rest liegt jetzt an euch...wenn mir da jemand helfen könnt, wärs nett von euch.

    gruß

  • #2
    Auslesen der Dateien:
    =>
    Code:
    $datei=fopen("gaestebuch/daten.txt", "r+");
    while($daten=fgetcsv($datei, 10000, "|")){
    $name=$daten[0];
    $email=$daten[1]; //und so  weiter }
    Vorausgesetzt, du trennst die Daten in der Datei durch |.
    Dein Array wird so groß, wieviel du an Daten in einem Datensatz speicherst.

    Kommentar


    • #3
      ähhh und was heißt das ?? ich kann echt nicht mer, als da drin steht. ich brauch eben noch das abschick-script (ich bin zu blöd dafür).
      *schnief*

      Kommentar


      • #4
        Dann fang ich mal ganz von vorne an
        Also, du hast ja verschiedene Formularfelder. Wenn du das Formular jetzt abschickst, am Besten mit der POST Methode kommt in die folgende Datei folgendes (musst du am besten nochmal alles auf dich anpassen):

        Code:
        $nachricht=preg_replace("/(\\n|\\r\\n|\\r)/", "
        ", $nachricht);
        
        $dateiname="gaestebuch/inhalt_test.txt";
        $datum=date("d.m.y");
        $inhalt="$datum|$gbname|$gbemail|$gbwebsite|$gbicq|$nachricht \r\n";
        $datei=fopen($dateiname, "r+");
        while(!feof($datei)) {
        $alt=fgets($datei, 500);
        $inhalt.=$alt; }
        fclose($datei);
        
        $datei=fopen($dateiname, "w+");
        fputs($datei, $inhalt);
        fclose($datei);
        Du scheibst also die verscheidenen Daten mit | getrennt da rein, damit du die später auch auslesen kannst, getrennt nach dem |. Die Daten werden vor die anderen Daten eingefügt, da ja der neueste Eintrag oben erscheinen soll. Das wäre dann schonmal das schreiben. Jetzt noch das auslesen. Machen wir weiter bei dem oben genannten Beispiel.
        Der Code zum Auslesen sähe dann folgendermaßen aus:
        Code:
        $zaehler=1;
        $datei=fopen("gaestebuch/inhalt_test.txt", "r+");
        while($daten=fgetcsv($datei, 10000, "|")){
        $datum=$daten[0];
        $name=$daten[1];
        $email=$daten[2];
        $website=$daten[3];
        $icq=$daten[4];
        $nachricht=$daten[5];
        $zaehler++; }
        Dann kannst du mit echo $datum usw. die Daten in einer Tabelle o.ä. ausgeben. Du kannst auch noch einen Counter angeben, der zählt wie viele Beiträge das GB hat, hier durch $zaehler bzw. $zaehler++ realisiert. Das gute an diesem direkten auslesen ist, du kannst auch noch eventeulle < und > oder BBCodes oder was auch immer in das gewünschte umwandeln. Ich hoffe, es ist dir etwas klarer geworden, ich bin nicht so der Meister im Erklären

        Kommentar


        • #5
          aha, das heiß also, ich kann diesen code jetzt da einfügen, wo ich das formular (zum eintragen) abschicken lassen will.

          Kommentar


          • #6
            Den oberen fügst du ein, wo die Daten in die Datei geschrieben werden, den unteren benutzt du zum Auslesen.

            Kommentar


            • #7
              danke leute, ich lieb euch

              Kommentar

              Lädt...
              X