Sascha Müller: Diese Seite ist nicht mehr gültig ...

... steht bei manchen Perl-Scripten geschrieben wenn man die Zurück-Taste im Browser betätigt.
Ich möchte gerne, dass bei mir diese Meldung auch kommt, aus Sicherheitsgründen. Es wird aber immer die letzte generierte HTML-Datei angezeigt. Was muss ich ändern, damit diese "Fehlermeldung" angezeigt wird?

MfG
Sascha Müller

  1. Hi,

    ... steht bei manchen Perl-Scripten geschrieben wenn man die Zurück-Taste im Browser betätigt.

    auch bei Nicht-Perl-Scripts, wenn sie über die Formular-Methode POST generiert wurden, und ggf. ungütliche Caching-Angaben gemacht wurden.

    Cheatah

    1. Hi,

      ... steht bei manchen Perl-Scripten geschrieben wenn man die Zurück-Taste im Browser betätigt.

      auch bei Nicht-Perl-Scripts, wenn sie über die Formular-Methode POST generiert wurden, und ggf. ungütliche Caching-Angaben gemacht wurden.

      Cheatah

      Hmmm, komisch. Eigentlich sollte dieses Script mit der Methode POST arbeiten. Ich habe das Script mal gepackt und online gestellt. Vielleicht mag mal jemand reingucken!? Online testen lässt es sich zurzeit unter der URL: http://www.wsm-webdesign.com/cgi-bin/djk-falkenberg/guestbook/guestbook.pl
      Hier der Download: http://www.wsm-webdesign.com/download/guestbook.zip

      Aber nur wenn es nicht zu viele Umstände bereitet.

      1000 Dank an alle, die helfen.

      MfG
      Sascha Müller

      1. Hi,

        Hmmm, komisch. Eigentlich sollte dieses Script mit der Methode POST arbeiten.

        ja, aber gegen Caching wird nichts unternommen.

        Cheatah

        1. Hi,

          Hmmm, komisch. Eigentlich sollte dieses Script mit der Methode POST arbeiten.

          ja, aber gegen Caching wird nichts unternommen.

          Cheatah

          Wie funktioniert das mit dem Caching? Sorry, habe ehrlich keine Ahnung...

          Danke trotzdem

          1. Hi,

            Wie funktioniert das mit dem Caching?

            in Deinem Fall am einfachsten über entsprechende <meta>-Tags. Schau dazu im HTML-Kapitel unter SelfHTML nach.

            Cheatah

            1. Also ich habe jetzt an folgender Stelle in der Datei guestadd.pl die markierte Zeile eingefügt:

              # Umleitungs-Seite andrucken
                print "Content-type: text/html\n\n";
                print "<html>\n";
                print "<head>\n";
                print "<title>Bitte warten...</title>\n";
              ----->  print "<meta http-equiv="cache-control" content="no-cache">\n";
                print "<meta http-equiv="Refresh" content="1; URL=guestbook.pl">\n";
                print "</head>\n";
                print "<body bgcolor="#FFFFFF" text="#000000">\n";

              Hattest du das gemeint? Funktioniert nämlich trotzdem nicht. :-(

              Trotzdem Danke!!!

              Ciao
              Sascha

              1. Hi,

                ----->  print "<meta http-equiv="cache-control" content="no-cache">\n";
                Hattest du das gemeint? Funktioniert nämlich trotzdem nicht. :-(

                naja, das ist _eine_ von mehreren Angaben. Es gibt dann noch "pragma" und, ganz wichtig, "expires".

                print "<meta http-equiv="Refresh" content="1; URL=guestbook.pl">\n";

                Sowas ist übrigens User-unfreundlich. Mal ganz abgesehen davon, dass Du mit solchen Dingen, wie Du mit Deiner Frage bezweckst, kaum einen Hund vor dem Ofen vorlockst.

                Wenn Du Mehrfacheintragungen vermeiden willst, musst Du diese _serverseitig_ erkennen und ablehnen. Clientseitiges ist grundsätzlich leicht manipulierbar, so auch hier. Damit gewinnst Du keinen Blumentopf, aber "brave" User ärgern sich.

                Cheatah

                1. Na gut, ich gebe es auf. Ich war der Meinung dass es einfacher wäre. Es funktioniert auch mit diesen zwei zusätzlichen Meta-Angaben nicht.

                  Wieso verärgere ich die User wegen dieser Umleitung? Diese sind heute schon in jedem modernen Forum Gang und Gäbe. Und zwar auch mit dieser Meta-Angabe, habe es da nämlich rauskopiert. ;-)

                  Dass ich das ganze besser Serverseitig unterbinden soll, weiß ich auch. Nur wollte ich jetzt bei diesem Schritt nicht ganz so viel Aufwand investieren, das wird dann der nächste Schritt werden. Jedenfalls ist es jetzt so schon einmal besser wie vorher. Vorher hat nämlich die Datei guestadd.pl nach dem Schreiben des Eintrags in die "Gästebuchdatenbank" das Gästebuch auch wieder neu aufgebaut. Dadurch war es dann möglich, durch Klick auf Aktualisieren, den Eintrag immer und immer wieder zu schreiben. Durch die Umleitung auf das richtige Gästebuch ist das jetzt zumindest nicht mehr ganz so einfach.

                  Aber die Serverseitige Unterbindung kommt noch, vielleicht sogar in Kopplung mit Cookie, falls derjenige sich aus- und wieder einwählt, wobei das dann schon langsam krass wird.

                  Noch einmal recht herzlichen Dank für deine Mühen.

                  Ciao
                  Sascha

                  1. Hi,

                    dieser Umleitung? Diese sind heute schon in jedem modernen Forum
                    Gang und Gäbe. Und zwar auch mit dieser Meta-Angabe, habe es da
                    nämlich rauskopiert. ;-)

                    daß andere es verkehrt machen, ist kein Grund, es auch nicht besser
                    lernen zu wollen.

                    Dass ich das ganze besser Serverseitig unterbinden soll, weiß ich
                    auch. Nur wollte ich jetzt bei diesem Schritt nicht ganz so viel
                    Aufwand investieren, das wird dann der nächste Schritt werden.

                    Du hast den Aufwand bereit investiert.
                    Du hast in Deinem Skript eine Zeile geändert, um den Client zu
                    motivieren, sich so zu verhalten, als hätte Dein Skript ihm einen
                    zusätzlichen HTTP-Header gesendet.
                    Mit genauso viel Aufwand - nämlich einem print-Statement ein paar
                    Zeilen weiter oben - hättest Du genau diesen Header auch selbst
                    senden können. "Content-type" ist so ein Header.

                    Vorher hat nämlich die Datei guestadd.pl nach dem Schreiben des
                    Eintrags in die "Gästebuchdatenbank" das Gästebuch auch wieder neu
                    aufgebaut. Dadurch war es dann möglich, durch Klick auf
                    Aktualisieren, den Eintrag immer und immer wieder zu schreiben.

                    Dann machst Du grundsätzlich etwas verkehrt.
                    Dein Skript sollte beim Ausgeben des Formulars eine Information in
                    selbiges schreiben, welche beim Zurücksenden dieses Formulars
                    serverseitig "verbraucht" wird, so daß Du zwischen dem ersten und
                    einem wiederholten Absenden dieses Formulars zuverlässig unterschei-
                    den kannst.

                    Durch die Umleitung auf das richtige Gästebuch ist das jetzt
                    zumindest nicht mehr ganz so einfach.

                    [ ] Du weißt, daß man automatische Weiterleitung in modernen Browser
                        einfach abschalten kann

                    Viele Grüße
                          Michael

      2. Nachtrag:
        Die "Fehlermeldung" sollte erscheinen wenn jemand einen Gästebucheintrag getätigt hat, und anschließénd den "Zurück" Button betätigt. Ich möchte damit Spamming erschweren.

        MfG
        Sascha Müller

        1. Hi,

          Die "Fehlermeldung" sollte erscheinen wenn jemand einen Gästebucheintrag getätigt hat, und anschließénd den "Zurück" Button betätigt. Ich möchte damit Spamming erschweren.

          hm. Dass man dann auch einfach auf "Reload" drücken kann, ist Dir aber schon bewusst, oder?

          Cheatah