Avatar billede faurskov1 Nybegynder
07. november 2005 - 15:52 Der er 8 kommentarer og
1 løsning

opdatere servervariabel on the fly (ASP version 3.0)

Hej kloge hoveder
Jeg har en side med en loginfunktion, hvor brugeren skriver navn og emailadresse med mere. Disse oplysninger gemmer jeg i en database samt i diverse servervariabler.

Brugeren kan senere gå tilbage til forsiden og opdatere sine oplysninger i databasen samt servervariablerne.

Servervariablerne bliver imidlertid først opdateret når jeg genopfrisker siden. Hvordan kan jeg tvinge en opdatering via  koden?
Avatar billede kalp Novice
07. november 2005 - 16:03 #1
må man se din kode... gør det lidt lettere.
Avatar billede faurskov1 Nybegynder
07. november 2005 - 16:12 #2
Naturligvis. Den aktuelle del af koden på loginsiden ser således ud:


        AOnummer=request.Form("AOnummer")
    Session.value("AOnummer")=AOnummer
    fornavn=request.Form("fornavn")
    Session.value("fornavn")=fornavn
    efternavn=request.Form("efternavn")
    Session.value("efternavn")=efternavn
    afdeling=request.Form("afdeling")
    Session.value("afdeling")=afdeling
    email=request.Form("email")
    Session.value("email")=email
    session.Timeout=60
Avatar billede softspot Forsker
07. november 2005 - 16:20 #3
Hvordan opdaterer brugeren sine oplysninger? Er det ikke ved at sende siden med de nye oplysninger tilbage til serveren? I så fald, kan du så ikke bare opdatere session-variablerne i samme arbejdsgang...?
Avatar billede softspot Forsker
07. november 2005 - 16:22 #4
Eller er det fodi du genererer siden der skal vises inden du opdaterer dine session-variable...?
Avatar billede faurskov1 Nybegynder
07. november 2005 - 16:37 #5
Hej softspot
Jeg gemmer sessionvariablerne på loginsiden, og går derefter tilbage til undersiden, som så ikke er opdateret.

Først når jeg genopfrisker siden via F5 bliver variablerne genopfrisket.

Så siden med de 'gamle' værdier til sessionvariablerne er ikke genereret før jeg har gemt de nye værdier.
Avatar billede softspot Forsker
07. november 2005 - 17:04 #6
Når du siger "går tilbage" så er det altså med history.back() eller en lign. clientside funktionalitet, eller hvad?

Hvis det er metoden du benytter, så kunne du overveje om du ikke bare skulle lave en serverside redirect i stedet for... altså noget i stil med:

response.redirect "underside.asp"

efter du har logget brugeren på...
Avatar billede faurskov1 Nybegynder
07. november 2005 - 17:17 #7
God ide, men den har jeg allerede prøvet uden held. Jeg laver en redirect til den samme side, men det giver ingen effekt. Findes der ikke et eller andet som jeg kan sætte i stedet for F5. Et javescript eller lignende???
Avatar billede softspot Forsker
07. november 2005 - 18:06 #8
Jeg tror det er nødvendigt at se noget mere kode end det du har vist og meget gerne det du har forsøgt dig med ifm. response.redirect, for det lyder som om der er noget galt med den måde du har gjort det (no offence)... Det kunne også være fint hvis du viser den kode du bruger til at opdatere siden med de informationer der ligger i session-variable...
Avatar billede dawin_dk Nybegynder
07. november 2005 - 19:28 #9
lyder for mig mere som et cache-problem end at den ikke opdaterer session ... add det her til en side du includer i alle dine filer ... evt database-connectionen..

response.expires=-100

derefter rydder du lige din cache i IE så den besøger siden for første gang.. og så se om det ikke virker...
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