Avatar billede weiland Nybegynder
07. maj 2003 - 22:39 Der er 15 kommentarer og
1 løsning

Kan jeg styre at siden er forældet?

Hvordan kontrollerer jeg, at en bruger ikke indtaster noget i en formular uden at genindlæse siden?

Altså det, som normalt styres med beskeden "Siden er forældet"...
Avatar billede erikjacobsen Ekspert
07. maj 2003 - 22:42 #1
Efter du har puttet det i databasen laver du en response.redirect
Avatar billede weiland Nybegynder
07. maj 2003 - 22:47 #2
det er desværre ikke løsningen
Avatar billede erikjacobsen Ekspert
07. maj 2003 - 22:49 #3
jo - det er
Avatar billede thomas_regin Nybegynder
07. maj 2003 - 22:52 #4
Erik har helt ret!

Hvis brugeren indtaster sine oplysninger på f.eks input.asp, og du gemmer dataerne på input_save.asp, så laver du bare en:

Response.Redirect("input.asp") i bunden af input_save.asp

/thomas regin.
Avatar billede weiland Nybegynder
07. maj 2003 - 22:53 #5
sorry, måske jeg skal være lidt mere præcis:

1) En bruger udfylder en række formularer i trin
2) Når en bruger er færdig med et trin, trykkes GEM og han ledes videre til næste trin
3) Nu gælder det om, at bruger IKKE går TILBAGE til det tidligere trin, uden at han genindlæser siden
Avatar billede weiland Nybegynder
07. maj 2003 - 23:00 #6
Som Jumper skriver i spørgsmål http://www.eksperten.dk/spm/34649

"Nej, du kan IKKE disable \"back\" knappen i browseren.

Løs problemet istedet for symptomet (brug serverside sessions eller clientside cookies til at tjekke om brugeren må se siden igen).
"
Avatar billede thomas_regin Nybegynder
07. maj 2003 - 23:03 #7
Okay!

Når en bruger trykker GEM, på hver side i din formular sætter du en session-variabel:

Session("whatpage") = Request.Querystring("page") 'Eller hvad du nu har at check på

HVIS en bruger så skulle finde på at refreshe siden, sætter du så et lille script i toppen af hver side der checker:

if session("whatpage") = Request.Querystring("page") then
  Response.Redirect("minformular.asp?page=" & session("whatpage") + 1)
End If

Mvh,

/thomas regin.
Avatar billede erikjacobsen Ekspert
07. maj 2003 - 23:14 #8
Du kan forhindre ham i at bruge en tidligere form, men ikke i at
finde den i browserens cache. Tildel hver form du giver brugeren
et langt, tilfældigt, unikt nummer, og marker i en session-variabel
eller en database, at det er det eneste lovlige svar.Og fjern
det igen når det er brugt een gang.

Submitter han formen igen, kan du fortælle ham at det ikke kan
lade sig gøre.
Avatar billede weiland Nybegynder
07. maj 2003 - 23:20 #9
Mange tak for hjælpen. Når ikke at teste før i morgen.

Men i mellemtiden kan I da svare... :-)
Avatar billede thomas_regin Nybegynder
07. maj 2003 - 23:23 #10
Jeg var slet ikke med i dette, så Erik skal afgjort ha' pointene! :)

/thomas.
Avatar billede erikjacobsen Ekspert
07. maj 2003 - 23:42 #11
Nej tak. Kig i kilden for denne side på eksperten.dk - så
skulle du finde sådan et tal i et hidden felt.
Avatar billede eagleeye Praktikant
08. maj 2003 - 09:39 #12
Tag et kig her det kan måske give nogle ideer til det.:
http://www.4guysfromrolla.com/webtech/111500-1.shtml
Avatar billede erikjacobsen Ekspert
08. maj 2003 - 09:52 #13
Man skal være opmærksom på, at browsere reagerer forskelligt på
kombinationen af "ingen caching" og tilbageknappen. Er det vigtigt
for funktionaliteten skal man ikke kun teste i IE.
Avatar billede weiland Nybegynder
08. maj 2003 - 10:30 #14
VÆLDIG interessant artikel
Avatar billede nielsmo Nybegynder
10. maj 2003 - 18:11 #15
du kan også bare lave en response.redirect("history.back(-1)") i toppen af siden...

kan ikke lige huske hvordan det der javascript noget ser ud, men det er ligesom de sider hvor man kan trykke tilbage på. hvis du forstår...., for så hvis folk prøver at komme tilbage, så bliver de smit frem igen.
Avatar billede weiland Nybegynder
09. juni 2003 - 17:31 #16
lukker
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