einfaches gästebuch, aber kapiers nicht

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • einfaches gästebuch, aber kapiers nicht

    hallo

    Zuerst möchte ich mich -da das mein erster beitrag in diesem board ist - vorstellen. mein name ist luke, und ich bin der webmaster von lukeweb.org. Ich habe eigentlich fast keine ahnung von php, und desshalb brauche ich dann und wann jemand der mir ein wenig hilft.

    so, nun habe ich mir ein neues guestbook eingebaut. ist von diesem tutorial hier Tutorial . der code ist da der das eigntlich tun sollte ist dieser hier:
    PHP Code:
    <?php 
    <!--Öffnet wieder gaestebuch.txt--> 
    $fp fopen("gästebuch.txt","a"); 
    if (
    $fp

    flock($fp,2); 
    $nl chr(13) . chr(10); 
    fputs ($fp
    <!--
    Das wird geschrieben--> 
    "Name: $vn<br>IP: Gelogt<IP: ".$_SERVER['REMOTE_ADDR']."><br>ICQ: $icq<br>E-Mail: $em<br>Message:<br>$comment<br><hr><br>"); 
    echo 
    "Vielen Dank, $vn<p>"
    echo 
    "Ihre Angaben wurden gespeichert<p>"
    flock($fp,3); 
    fclose($fp); 

    else 

    echo 
    "Datei konnte nicht zum"
    echo 
    " Schreiben geöffnet werden"

    ?>
    sonst ist er auf der tutorial seiten noch 2 andere dateien...

    nun, ich habs ein wenig umgeschrieben, und so, und es funktioniert jetzt eigentlich alles, ausser, dass ein neuer eintrag nicht wie bei einem gb üblich oben ist, sondern unten angehängt wird.

    Könnte mir da jemand helfen? vielen dank!

    cyrtic

  • #2
    Vllt. solltest du mal versuchen erst den Inhalt deiner Textdatei auszulesen (die bisherigen Einträge), dann das neue vor das alte dranhängen und dann den Inhalt insgesamt neu in die Textdatei reinschreiben...

    Comment


    • #3
      sorry, aber das überfordert meine phpkenntnisse leider schon!
      könnte mir jemand ein wenig genauer helfen?

      vielen dank!

      cyrtic

      Comment


      • #4
        So:

        PHP Code:
        $filename "gb.txt";
        $handle fopen($filename"r");
        $contents fread($handlefilesize($filename));
        fclose($handle);
        $handle fopen($filename"w");
        $new_content "Neuer Inhalt";
        fwrite($handle$new_content.$contents);
        fclose($handle); 

        Comment


        • #5
          sorry, wenn ich stresse, aber ich raffs nicht wo ich den einbauen soll??

          cyrtic

          Comment


          • #6
            Dort wo der neue Inhalt in die Datei geschrieben wird...beim fputs(), nur das du den neuen Inhalt erst in einer Variablen zwischenspeichern solltest und die restlichen Variablen anpassen...außerdem musst du das Gästebuch dann mit "w" und nicht mit "a" als zweitem Parameter öffnen, weil du ansonsten ja der Datei nur was dranhängst (was du ja nicht willst). Das restliche Anpassen schaffst du aber, oder?

            Comment


            • #7
              Vielen dank KTJ!!
              Ich habs zwar noch nicht ganz kapiert, aber ich hoffe das wird noch! auf jedenfall funktionier es!

              nochmal thx

              cyrtic

              Comment


              • #8
                Kein Problem...

                Also nochmal das Prinzip:
                1.) Die Datei nur zum lesen öffnen
                2.) Den kompletten Inhalt der Datei in einer Variablen zwischenspeichern
                3.) Datei schliessen und dann nochmal öffnen (diesmal zum schreiben)
                4.) Das was neu dazukommt in einer Variablen speichern
                5.) Den neuen Inhalt in die Datei übertragen, der sich aus dem was dazukommt + dem alten Inhalt zusammensetzt
                6.) Datei wieder schliessen

                Comment


                • #9
                  sorry, muss dich leider endteuschen! ich hatte ein blackout, es funktioniert nicht! aber ist ja auch egal! vielen dank nochmal!

                  cyrtic

                  Comment


                  • #10
                    Wieso ist es denn auf einmal egal?
                    Dann poste doch nochmal das was du dir jetzt so zusammengebastelt hast und sag nochmal, was genau nicht funktioniert...

                    Comment

                    Working...
                    X