Session variabel forsvinner!
Jeg har lavet en side hvor man skal finde forskellige danske byer.
På siden bruger jeg session variabler.
Siden fungerer ved at man bliver spurgt om hvor en by ligger (byens navn bliver lagt som session("byfor1")). Når man klikker på kortet på siden bliver siden genloadet med bynavnet man klikkede på, som variabel i url'en.
siden sammenligner nu de to variabler.
problemet er, at en gang imellem bliver session("byfor1") ikke fornyet! den bliver ved med at være den forige by!
Hvad kan problemet være??
Siden kan ses på:
http://www.byrjalsen.dk/ (...)ASP koden er:
<HTML>
<HEAD>
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-store">
<TITLE>danmark</TITLE>
</HEAD>
<BODY bgcolor="#66CCFF">
FLASH KLIPPET VÆK!!
<font size="+1"><b>Kan du finde byen?</b></font><p></p>
<%
dim byfor
dim byfor1
dim sporg
byfor = Request.QueryString("by")
byfor1 = session("byfor1")
sporg = "ok"
if byfor = "" then
session("teller") = 0
else%>
<table border =1>
<tr>
<td>Var. fra flash </td>
<td>Var fra Session</td>
</tr>
<tr>
<td><%= byfor %></td>
<td><%= byfor1 %></td>
</tr>
</table>
<%if byfor = byfor1 then
session("teller") = session("teller") +1
Response.write"Du har nu " & session("teller")
if session("teller") = 1 then
Response.write " rigtig <br>"
else
Response.write " rigtige <br>"
end if
Else%>
<b><font color="Red">Det var forkert!!</font></b><br>
Du trykkede på <%= byfor %> <br><br>
<a href="danmark.asp">start forfra</a>
<%session("teller") = 0
sporg = "not"
end if
end if
%>
<br>
<%
if sporg = "ok" then
Randomize
randnum = Int((25) * Rnd + 1)
set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("db/db1.mdb")
set rs = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT * FROM byer where id =" & randnum
rs.Open SQL, Conn, 1, 3
%>
Klik på <font color="Red"><b><font size="+1"><%= rs("bynavn") %></font></b></font><br>
<%
session("byfor1") = rs("bynavn")
end if%>