Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Zurück-Button stellt gelöschte Variable wieder her

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Zurück-Button stellt gelöschte Variable wieder her

    PHP mit Session auf Safari/Mac

    Seite 1: Formular - Daten eingeben und senden an Seite 2.
    Daten auslesen ($_POST) und diese löschen:
    $_POST['var']="";
    unset($_POST['var'];

    Problem: verwende ich den Zurück-Button, sind die Werte der $_POST-Variablen weiterhin vorhanden.

    Versuch mit: session_cache_limiter('nocache');
    Dachte mir, wenn die Seite nicht gecacht wird, muss sie neu eingelesen werden und die $_POST-Variablen werden neu initialisiert = Denkfehler meinerseits.

    Frage: wie kann ich die Variablen vernichten und mittels BackButton sie trotzdem nicht wiederherstellen? OHNE JavaScript MIT PHP.

  • #2
    Ohne JAVAScript wohl nicht, denn die Zurück-Taste ist eine Funktion des Browsers auf der Client-Seite ... darauf hat PHP sehr wenig Einfluß ....

    warum soll bei "Zurück" nicht der Inhalt des Formulars wiederhergestellt werden?
    "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste [IMG]http://www.php.de/core/images/smilies/icon_lol.gif[/IMG]

    Kommentar


    • #3
      Wird eine Seite zum Üben von Lerninhalten. Durch 1maliges Zurück käme man zur nächsten Frage, 2maliges Zurück zur richtigen Antwort. Was nicht tragisch ist, weil es einem nicht wirklich hilft und niemandem schadet. Mich stört es aber.

      Kommentar


      • #4
        Könnt ich mir aber auch zunutze mache, indem ich dem Formular ein hidden hinzufüge, mit dem aktuellen index der Frage. Der müsste ja dann auch gespeichert werden. Auf Seite 2 wird dann überprüft, ob aktueller index und aktuelle Frage übereinstimmen. Wenn nicht, dann passiert irgendwas anderes. Muss ich mir aber erst ausdenken.

        Kommentar


        • #5
          Was du machen könntest wäre einen einmaligen Key generieren der mit dem Formular gesendet wird. Beim ersten laden des Formulars wird dieser irgendwo abgelegt (z.B. in der Session) und nach dem absenden wird er wieder gelöscht. Versucht nun jemand die POST-Daten erneut zu senden, dann kannst du das abfangen da der gesendete Key nicht (mehr) existiert.

          Kommentar

          Lädt...
          X