Gästebuch funktioniert einfach nicht

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

  • Gästebuch funktioniert einfach nicht

    Hi

    Ich versuche momentan ein GB in meine Homepage einzubauen. Leider funktioniert es einfach nicht und ich habe keine Ahnung warum.

    Das GB ist hier zu finden.

    Ich sehe 2 Hauptprobleme:

    1. Die Datei comment.txt in der die Einträge gespeichert werden wird nicht korrekt ausgelesen und obwohl ich allen Benutzergruppen alle Rechte gegeben habe wird nicht in sie geschrieben.

    2. Nachdem auf submit geklickt wird, wird das Layout der Site nicht mehr korrekt angezeigt.

    -> Beim aufrufen der Site steht schon ein Kommentar da. Dieser wurde einfach in die Datei comment.txt geschrieben und wurde nicht über "submit" erstellt. (wurde eigentlich nur als Designtest gemacht). Wenn ich jetzt auf submit klicke wird dieser Kommentar auch nicht mehr dargestellt.

    danke im voraus
    mfg David

  • #2
    ich glaub nicht daß Deine Fehlerbeschreibung ausreichend ist...

    Kommentar


    • #3
      Poste bitte mal deinen code
      Signatur-Text ...

      Kommentar


      • #4
        @koala: Wieso reicht die Fehlerbeschreibung denn nicht aus?
        Du siehst ja was nicht geht wenn du versuchst einen Eintrag zu verfassen.

        @dani_o: Hier der PHP code:

        <?php
        // Dateiname in variable speichern
        $datei="comment.txt";
        // Variable Kommentar gesetzt? Name und E-Mail nicht leer?
        if (isset($comment) && $name != "") {
        // Datei wird zum Schreiben-lesen geöffnet
        $zeiger=fopen($datei, "r+");
        // alte Daten herauslesen und in §alt sichern
        $alt=fread($zeiger, filesize($datei));
        // E-Mail-Link entsteht
        $email="<a href=\"mailto:$email\">$email</a>";
        // Datum ermitteln und formatieren
        $datum=date("j.n.Y");
        // HTML-Zeichen maskieren Slashes entfernen, Zeilenumbrüchererhalten
        $comment=htmlspecialchars($comment);
        $comment=stripslashes(n12br($comment));
        // Meinung "zusammensetzen"
        $meinung="<h1>$datum</h1><p><b>$name</b></a> wrote:<br>$comment</p>\n";
        // unsichtbarer Cursor marschiert zum Anfang
        rewind($zeiger);
        // neue Meinung vor alte in Datei schreiben:
        fputs($zeiger,"$meinung \n $alt");
        // Datei schließen
        fclose($zeiger);
        }
        // Datei komplett anzeigen
        readfile($datei);
        ?>

        Kommentar


        • #5
          liegt vermutlich an $zeiger.

          Hast Du mal mit echo den Variableninhalt geprüft?

          Was sagt error_reporting(E_ALL)?

          Kommentar


          • #6
            OffTopic:
            Original geschrieben von derseemann
            @koala: Wieso reicht die Fehlerbeschreibung denn nicht aus?
            Du siehst ja was nicht geht wenn du versuchst einen Eintrag zu verfassen.
            Naja da seine Glaskugel in der Wäsche ist, nehm ich mal an. Am Dienstag ist es günstiger.

            Wie Koala sagt.. Während dem Entwickeln error_reporting(E_ALL)
            _____________
            Ist das so? Scheinbar muss das so?! Oder ist es vielleicht viel leichter...
            [color=red]Auch ich beantworte keine mails bei php problemen! Für das gibts ja das Forum!![/color]

            Kommentar


            • #7
              Vielleicht sollte ich noch erwähnen dass ich anfänger bin

              also bei echo "$zeiger" gehts nicht..

              error_reporting(E_ALL) zeigt auch nichts an

              wenn es jetzt an $zeiger liegt muss ich was ändern damit es funktioniert?

              PS: Danke für die schnellen antworten

              Kommentar


              • #8
                Du hast register_globals auf on ?
                PHP-Code:
                echo phpinfo(); 
                und nach register_globals suchen.
                On oder off ?

                Gruss

                tobi
                Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                Kommentar


                • #9
                  es ist off

                  Habe es jetzt in den php.ini Dateien auf on geändert aber es wird dennoch als off angezeigt.
                  Muss ich noch mehr ändern?
                  (ich habe einen macintosh)

                  Kommentar


                  • #10
                    Original geschrieben von derseemann

                    Muss ich noch mehr ändern?
                    (ich habe einen macintosh)
                    Ja es wieder auf "off" ändern! Du willst ja saubere Scripte!
                    Lies mal nach war Register globals bewirkt... Und schreib Dein Script um.

                    Ist das der richtige Code den Du gepostet hast?

                    Falls ja hast Du das mit dem Error Reporting noch nicht begriffen:

                    [COLOR=red] Fatal error: Call to undefined function: n12br() in test.php on line 21
                    [/COLOR]

                    Dann hätest Du auch gemerkt das n12br & nl2br nicht das selbe ist!!!


                    PHP-Code:
                     $comment=stripslashes(n12br($comment)); 
                    PHP-Code:
                     $comment=stripslashes(nl2br($comment)); 
                    Zuletzt geändert von Seccho; 02.03.2006, 14:52.
                    _____________
                    Ist das so? Scheinbar muss das so?! Oder ist es vielleicht viel leichter...
                    [color=red]Auch ich beantworte keine mails bei php problemen! Für das gibts ja das Forum!![/color]

                    Kommentar


                    • #11
                      VIELEN DANK

                      ich hab dass wohl wirklich nich so ganz begriffen....

                      Kommentar

                      Lädt...
                      X