Yadgar (immer noch Sumpfzigeuner!): Automatische Weiterleitung im <body>

High!

Um zu verhindern, dass auf meiner Benutzerregistrierungs-Seite (die ihre Daten an sich selbst sendet, daher das Problem) versehentlich oder absichtlich nach der vollständigen und korrekten Eingabe der Daten der Submit-Button mehrfach angeklickt wird (und so überflüssige Datenbank-Einträge erzeugt werden), habe ich kurzerhand in die Verzweigung bei erfüllter Bedingung für erfolgreiche Registrierung eine automatische Weiterleitung eingefügt:

<meta http-equiv="refresh" content="0; URL=index.htm">

Funktioniert prima...nun gehören solche Daten ja eigentlich in den Header - kann ich sie überhaupt im Body verwenden, ohne unerwünschte Seiteneffekte zu riskieren?

Bis bald im Khyberspace!

Yadgar

  1. Dein ansatz ist fehlerhaft - viele Clients unterdrücken diese Art automatischer Weiterleitung (oder unterstüzten sie garnicht). Behebe dein Problem mit der Registierung auf der Serverseite.

    1. Dein ansatz ist fehlerhaft - viele Clients unterdrücken diese Art automatischer Weiterleitung (oder unterstüzten sie garnicht). Behebe dein Problem mit der Registierung auf der Serverseite.

      Kann ich serverseitig eine automatische Weiterleitung programmieren, indem ich die Umgebungsvariable $_SERVER['SCRIPT_FILENAME'] entsprechend manipuliere?

      Bis bald im Khyberspace!

      Yadgar

      1. Kann ich serverseitig eine automatische Weiterleitung programmieren, indem ich die Umgebungsvariable $_SERVER['SCRIPT_FILENAME'] entsprechend manipuliere?

        Nein.

        Aber du kannst per HTTP weiterleiten.

        Tendentiell würde ich dir aber zu einem Affenformular raten - Weiterleitungen sind bei so einem Anwendungsfall allgemein schlechter Stil.

        1. High!

          Aber du kannst per HTTP weiterleiten.

          Wo finde ich heraus, wie das geht?

          Tendentiell würde ich dir aber zu einem Affenformular raten - Weiterleitungen sind bei so einem Anwendungsfall allgemein schlechter Stil.

          Was ist denn ein Affenformular?

          Abgesehen davon stellt sich in meinem konkreten Fall die Frage nach der Barrierefreiheit nicht - das Bibliotheksverwaltungssystem, zu dem die Benutzerregistrierungsseite gehört, wird ausschließlich auf einem Standalone-Rechner ohne jede Netzwerkanbindung (so etwas soll es tatsächlich noch geben!) laufen - und auf diesem Rechner  kommt als Browser für diese Anwendung ohnehin nur Firefox in Frage (beim IE 7 werden jegliche Skripts geblockt).

          Bis bald im Khyberspace!

          Yadgar

          1. Mahlzeit Yadgar,

            »» Aber du kannst per HTTP weiterleiten.

            Wo finde ich heraus, wie das geht?

            »» Tendentiell würde ich dir aber zu einem Affenformular raten - Weiterleitungen sind bei so einem Anwendungsfall allgemein schlechter Stil.

            Was ist denn ein Affenformular?

            Willst Du im Ernst behaupten, Du wüsstest nicht, wie Google funktioniert?

            MfG,
            EKKi

            --
            sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
  2. Moin!

    Um zu verhindern, dass auf meiner Benutzerregistrierungs-Seite (die ihre Daten an sich selbst sendet, daher das Problem) versehentlich oder absichtlich nach der vollständigen und korrekten Eingabe der Daten der Submit-Button mehrfach angeklickt wird (und so überflüssige Datenbank-Einträge erzeugt werden), habe ich kurzerhand in die Verzweigung bei erfüllter Bedingung für erfolgreiche Registrierung eine automatische Weiterleitung eingefügt:

    <meta http-equiv="refresh" content="0; URL=index.htm">

    Du kannst dich nicht dagegen wehren, dass ein Button mehrfach angeklickt wird.

    Die übliche Vorgehensweise, um zu verhindern, dass POST-Ergebnisseiten durch Reload im Browser dieselben Daten noch einmal schicken und dieselbe Aktion erneut ausführen, ist ein HTTP-Redirect, der als POST-Ergebnisseite ausgegeben wird, und zu einer GET-Ergebnisseite weiterleitet. Diese gibt lediglich eine OK-Meldung aus, ohne in der Datenbank zu schreiben, und kann beliebig oft neu geladen werden, ohne etwas zu verändern.

    - Sven Rautenberg