Avatar billede foralias Praktikant
08. marts 2007 - 11:13 Der er 16 kommentarer og
1 løsning

Tilbage knappen driller min side, hvordan omgås det?

På en af mine sider får man tildelt et nummer (lad os kalde den side 2), som bruges til fremtidig reference. Man indtaster så nogle data og indsender formularen og man springer herefter til side 3.
Mit problem består så i at folk bruger tilbageknappen i stedet for den navigation som jeg har lagt ud på siderne. Det betyder at de får det samme referencenummer igen, når de går tilbage til forsiden.
Jeg har på default siden (side 1) lavet en session("tilbage") som får værdien 1.
På side 2 tjekker jeg om session("tilbage") er <> 1 og er den det, skal man redirectes til side 1, er den ikke så fortsætter den bare.
På side 3 ændrer jeg så værdien på session("tilbage") til 3, denne burde så være 3 for eftertiden ikke? For bruger jeg tilbage knappen skifter sessionen værdi til 1 igen.

Er jeg helt galt afmarcheret med brugen af session eller er der en nemmere løsning for at omgå tilbage knappen?
Avatar billede kalp Novice
08. marts 2007 - 11:59 #1
Du har vel en fejl i din kode:)

Når du starter din side 2 skal du først sætte Session tilbage til 2 før man sendes til side 3.. og altså ikke allerede i starten!

og det samme side 3 osv osv
Avatar billede foralias Praktikant
08. marts 2007 - 12:25 #2
Du mener at jeg på side to skal sætte session til 2 inden jeg går videre til side 3 og ikke, som nu sætte den til 2 når jeg er på side 3?
Avatar billede foralias Praktikant
08. marts 2007 - 12:26 #3
Der er en lille slåfejl i spm. det er "På side 3 ændrer jeg så værdien på session("tilbage") til 3" men skal være "På side 3 ændrer jeg så værdien på session("tilbage") til 2"
Avatar billede kalp Novice
08. marts 2007 - 12:50 #4
okay det vil så sige at på side 2 ændre du session("tilbage") til 1.

din fremgangsmåde vil virke, men du må bare ikke sætte session ligeså snart siden loades! det skal være før man bliver sendt til næste side først.

lige nu lyder det som om du ændre session når siden loades og så er det klart hvis man går tilbage til side 2 at den vil ændre session til 1
Avatar billede foralias Praktikant
08. marts 2007 - 12:58 #5
Nej jeg ændrer ikke værdien på side 2.
På side 1 sætter jeg værdien til 1 og når jeg så loader side 3 sættes værdien til 2.
Avatar billede foralias Praktikant
08. marts 2007 - 12:59 #6
"Kort" fortalt ser det sådan ud:
Side 1: session("tilbage")=1
Side 2: if session("tilbage")<>1 then response.redirect(URL)
Side 3: session("tilbage")=2
Avatar billede foralias Praktikant
08. marts 2007 - 13:01 #7
Står jeg på side 3 er værdien 2. Har tjekket med response.write.
Bruger jeg så tilbage knappen skifter sessionen værdi til 1, har også tjekket med response.write. Det burde den da ikke kunne vel?
Avatar billede kalp Novice
08. marts 2007 - 13:03 #8
Det burde den ikke... specielt når du slet ikke sætter din session på side 2.
der må være noget du har overset
Avatar billede foralias Praktikant
08. marts 2007 - 13:12 #9
Nu har jeg prøvet at lave en ny session (hvis jeg havde laver fejl før) men den laver stadig det samme :-( Skriver session = 2 på side 3 og session = 1 på side 2 når jeg går tilbage.
Avatar billede kalp Novice
08. marts 2007 - 13:24 #10
jeg har lige testet.. og du har næsten ret..
session bliver ændret, men koden bliver ikke kørt på siden!

dvs. når jeg trykker tilbage fra side 3 og havner på side 2 så sker der ikke noget.. trykker jeg F5 så ryger jeg til side 3 igen!

(testede godt nok i ASPX men det går ud på et)

tænker lige over en solution:P
Avatar billede kalp Novice
08. marts 2007 - 13:29 #11
drop din session!

skriv det her i din body tag

<body onLoad="history.go(+1)">
Avatar billede foralias Praktikant
08. marts 2007 - 13:30 #12
På hvilken side?
Avatar billede kalp Novice
08. marts 2007 - 13:32 #13
alle sammen du ikke vil have man skal kunne trykke tilbage på!
Avatar billede kalp Novice
08. marts 2007 - 14:09 #14
var det ikke lige til?
Avatar billede foralias Praktikant
08. marts 2007 - 14:22 #15
Ok, det var underligt.....
Jeg har lige accepteret det, men der sketet intet. Nå what ever... :-)
Jeg har testet i netscape, firefox og IE og det virker.
Avatar billede kalp Novice
08. marts 2007 - 14:28 #16
Det er fordi man skal markere et brugernavn før accepter virker:P
men det fik du klaret;)
tak for point og godt det virker i de forskellige browsere.
Avatar billede foralias Praktikant
08. marts 2007 - 14:31 #17
Jeps, gjorde jeg også.
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
Kurser inden for grundlæggende programmering

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