Avatar billede lone_a_p Praktikant
09. september 2003 - 11:43 Der er 4 kommentarer og
1 løsning

Back til en session-side?

Hej Eksperter,

Jeg har et spørgsmål ang. forms.

Eks. Jeg har indtastet oplysninger og submitter formen. I næste script sker der en fejl og oplysningerne bliver ikke indlæst.

Jeg vil så gerne lave en 'tilbage-knap', så de nyindtastede (ikke gemte) oplysninger fremkommer på skærmen igen, så brugeren ikke skal til at indtaste de samme oplysninger igen.

Jeg bruger sessions og kan derfor ikke bruge javascripts history.back()

Jeg har forsøgt at danne en querystring med variablerne, men det er alt alt for besværligt. Hvad skal jeg gøre??

Venlig hilsen
Lone
Avatar billede swaxi Nybegynder
10. september 2003 - 16:31 #1
du kan jo bruge serialize på get/post ... og så gemme det i session ... eg :

$_SESSION['query'] = serialize(array_merge($_POST, $_GET));

...

og den anden vej :

$get_post = unserialize($_SESSION['query']);

...

<form>
<input name="foo" value="<?=(isset($get_post['foo']))?get_post['foo']:""?>" />
Avatar billede lone_a_p Praktikant
11. september 2003 - 14:54 #2
Hej Swaxi,

Tak for dit svar. Det var ikke helt det jeg mente, men det gav mig et spor. Det jeg vil bruge er
session_cache_limiter("private");

OBS: Skal sættes ingen session_start();

Nu virker det præcis, som det skal. Jeg kan bruge tilbage-knappen til en form, og mine indtastninger står stadig på skærmen.

Men der er point alligevel :o)

Mvh
Lone
Avatar billede lone_a_p Praktikant
11. september 2003 - 14:54 #3
UPS!! ... inden ... ikke ingen ...
Avatar billede swaxi Nybegynder
11. september 2003 - 19:17 #4
hvad gør session_cache_limiter() helt præcis ?
Avatar billede lone_a_p Praktikant
12. september 2003 - 12:29 #5
Jeg ved det faktisk ikke helt præcist ... men ...

Den gør i alt fald, så man kan benytte sig af tilbage-knappen, når man bruger sessions (og så man ikke behøver at opdatere siden PLUS indtaste form-inputtet igen igen)

Jeg ved faktisk ikke om den gør mere end det, jeg ved kun at man kan bruge:
session_cache_limiter("nocache") ... vist nok default????
session_cache_limiter("private") ... som jeg har brugt
session_cache_limiter("public")

jeg sætter den f.eks. til nocache på en loginside, så oplysningerne overhovedet ikke bliver husket af sikkerhedsmæssige hensyn, men derimod på sider, hvor tilbage-knappen er en vigtig del, der sætter jeg til private. Jeg ved ikke hvad public gør. Det virkede som jeg ville have det med private, så jeg ledte ikke videre ;o)

Men det er kun ved brug af tilbage-knappen, at oplysningerne står i formen - ikke hvis man kommer til siden via et link. Det virker helt som det skal, det er jo fantastisk :o)

Mere ved jeg ikke ...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester