[php] Gegevens invoervelden verdwijnen na refresh

Pagina: 1
Acties:

Onderwerpen


  • x-man
  • Registratie: September 2001
  • Laatst online: 22-08 12:38

x-man

Proud newbie!

Topicstarter
N.a.v. dit topic: [rml][ PHP]Form, variabelen weg, na refresh.[/rml] heb ik een vraag over de

De invoervelden worden geleegd na een refresh. In het bovenstaande topic is door iemand gemeld dat dit gebeurd in IE als je een session.start() in je code definieert. Dit is bij mij dus het geval.
Firebird heeft hier geen last van. Maar is er een manier om dit te omzeilen in IE? Alle code in 1 file stoppen is geen optie.

Better a newbie in one hand then ten wannabe-hacker-scriptkiddies on your server.


Verwijderd

x-man schreef op 20 november 2003 @ 10:30:
N.a.v. dit topic: [rml][ PHP]Form, variabelen weg, na refresh.[/rml] heb ik een vraag over de

De invoervelden worden geleegd na een refresh. In het bovenstaande topic is door iemand gemeld dat dit gebeurd in IE als je een session.start() in je code definieert. Dit is bij mij dus het geval.
Firebird heeft hier geen last van. Maar is er een manier om dit te omzeilen in IE? Alle code in 1 file stoppen is geen optie.
Je kan de waarden van de variabelen meegeven aan het PHP scriptje met het formulier erin, en vervolgens die waarden in de invoervelden zetten.

Acties:
  • 0 Henk 'm!

Verwijderd

Sjord: het gaat hier om een refresh, daarbij worden de invoervelden niet verzonden (geen form submit).

Als ik het goed heb, moet je aan Internet Explorer even een paar headers meegeven (bovenaan een PHP script, methode header(...)), maar welke headers dat waren weet ik niet meer precies... Je moet in ieder geval in die richting zoeken. Overigens kun je volgens mij die headers gewoon in je PHP-script opnemen, zonder dat andere browsers (zoals Firebird) daar last van hebben.

Acties:
  • 0 Henk 'm!

  • x-man
  • Registratie: September 2001
  • Laatst online: 22-08 12:38

x-man

Proud newbie!

Topicstarter
Ik heb het antwoord gevonden op php.net
if you are dealing with forms and session_start() you might experience that all form-values will automatically be emptied after returning to the form with the browser's back-button or javascript's history.back().

this is especially annoying if you want to enable your users to use the browser's back button to apply corrections to the inputted data on the previous page.

add this line right after calling session_start() to solve the problem:

header("Cache-control: private");

now, users can hit the back-button to access the form containing all the information they've inputted before.
Misschien dat dit iemand helpt in de toekomst. :)

Better a newbie in one hand then ten wannabe-hacker-scriptkiddies on your server.


Acties:
  • 0 Henk 'm!

Verwijderd

Yepz,
PHP:
1
header("Cache-Control: private");
does the job!!