Jag har en sida (Allt har fungerat förut!) där man tar med sig ett värde i en session och response.redirectar till en annan sida. Nu helt plötsligt så släpper han värdet i session-variabeln när den har kommit in på en sida. Varför? Hur hindrar man detta? Jag provar på min egen dator i en virtuell site... (Cookies är inte avstängda...) Kort och gott, använd bara Response.Redirekt till vad det är tänkt för! Tackar! Det fungerade med en server.transfer! Men hur fungerar det om man vill ha ett annat värde med i querystringen? Det gick inte att skriva: > server.transfer "Medlem.asp?Fel=Du fanns ej i register, registrera dig först" Det går utmärkt att skicka med querystring i Server.Transfer, men jag håller med Rickard att mellanslag och svenska tecken (åäö) inte hör hemma i en querystring Finns det inte en Server.URLEncode() funktion?: > Finns det inte en Server.URLEncode() funktion?: Jag tackar för alla nya tips, men det största problemet kvarstår! Datorn tappar värdet i sessionsvariablarna när man navigerar vidare till en annan sida (inom session-området)... Ja, jag sätter egna session, och när jag slänger ut det på en server så fungerar det över internet, men det är på min lokala dator som det krånglar! Måste kanske bekänna att jag faktiskt inte använder Global.asa, vilket jag kanske borde? Nej, du behöver inte använda global.asa. Det finns några olika möjligheter till att du tappar sessionsvariabler: Tyvärr, inget av dem stämmer! Ligger sidan där du inte kommer åt sessionen på samma server och i samma virtual directory? Ni kan jämföra med [Ny lösning på godkänd användare], fast det värdet som är i session-variabeln tappas helt.ASP - sessions!
Enda sättet att få med sig värdet är att sätta ?ID=... efter URLen i en response.redirect och hämta in värdet på nästa sida, men så vill jag inte ha det!
Varför? Hur...? Snälla...Sv: ASP - sessions!
Att berätta för klienten att sidan har flyttats.
Testa Server.Transfer eller Server.Execute istället.Sv: ASP - sessions!
server.transfer "Medlem.asp?Fel=Du fanns ej i register, registrera dig först"
Dessutom följer inte session-variabeln med i alla sidor där den ska vara med!
Tack på förhand!Sv: ASP - sessions!
Jag vet inte om det går att skicka med en QueryString i Server.Transfer. Jag använder aldrig sådant.
Däremot antar jag att det inte går att skicka mellanslag i QueryString. Testa att labba med bara "medlem.asp?fel=ej" och se om det fungerar.Sv: ASP - sessions!
Sv: ASP - sessions!
server.transfer "Medlem.asp?Fel=" & Server.URLEncode("Du fanns ej i register, registrera dig först")Sv: ASP - sessions!
Jo, en sådan finns och det borde fungera!
> ?Fel=Du fanns ej i register, registrera dig först
Men så långa QueryString? Låter lite väl onödigt!Sv: ASP - sessions!
Sv: ASP - sessions!
Sv: ASP - sessions!
1) Sessionen timar ut.
2) Du navigerar in i en annan virtual directory.
3) Du använder Session.Abandon-metoden.
4) Du råkar sätta sessionen till null/"", kanske genom att använda den som en ByRef parameter i en funktion eller sub.
Mvh,
MSv: ASP - sessions!
Såvida inte sessionen timar ut sig själv när den navigerar in på en annan sida. Jag använder en inloggningskod, där jag ändrade response.redirect till server.transfer, och så långt funkar allt bra nu. När jag sedan vill ändra mina uppgifter efter inloggning så används sessionen fortfarande, men den tappar värdet efter att ha kommit in på den nya sidan.
Tack ändå...Sv: ASP - sessions!
/JohanSv: ASP - sessions!