webForumDet fria alternativet

Problem med Request.QueryString

8 svar · 210 visningar · startad av Ralle

RalleMedlem sedan feb. 2003209 inlägg
#1
Sasong2=Request.QueryString("Sasong2")
Set objConnect = Server.CreateObject("ADODB.Connection")
objConnect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= "& Server.MapPath("../databas/Ishockey.mdb")
strSQL1="SELECT DISTINCT Omgang AS Omg FROM Elitserien where Sasong=" & Sasong2 & ""
Set rstOmg = Server.Createobject("adodb.RecordSet")
rstOmg.Open strSQL1, objConnect, 1, 2
If rstOmg.EOF Then
     Response.Write("Ingen omgång funnen")
Else
     Response.Write("<Form name=""omgang"" action="""& Request.ServerVariables("SCRIPT_NAME") & """ method=""post"">")
     Response.Write("<SELECT name=""valdomgang"" OnChange=""this.form.submit();"">")
     Response.Write("<OPTION value=""x"">-- VÄLJ --</OPTION>")
     Response.Write("<OPTION value=0>Alla</OPTION>")
   Do until rstOmg.EOF
          Response.Write("<OPTION value=""" & rstOmg("Omg") & """>" &"Omgång " & rstOmg("Omg") & "</OPTION>")
          rstOmg.MoveNext
     Loop
     Response.Write("</SELECT>")
End If
%><BR><BR><%
If request.form("valdomgang") <> "" then
valdomgang=request.form("valdomgang")
End If
If Isnumeric(valdomgang) then
If valdomgang=0 Then
strSQL="SELECT Datum, Omgang, L1.Lag AS hemma, L2.Lag AS borta, HemmaPeriod1Mal, BortaPeriod1Mal, HemmaPeriod2Mal, BortaPeriod2Mal, HemmaPeriod3Mal, BortaPeriod3Mal, HemmaPeriod4Mal, BortaPeriod4Mal, HemmaPeriod5Mal, BortaPeriod5Mal FROM (Elitserien AS elit INNER JOIN Lag_i_Elitserien AS L1 ON L1.ID=elit.HemmaLag) INNER JOIN Lag_i_Elitserien AS L2 ON L2.ID=elit.BortaLag WHERE Sasong=" & Request.QueryString("Sasong2") & " ORDER BY Datum"
Set rstResultat=objConnect.Execute(strSQL)
Else
strSQL="SELECT Datum, Omgang, L1.Lag AS hemma, L2.Lag AS borta, HemmaPeriod1Mal, BortaPeriod1Mal, HemmaPeriod2Mal, BortaPeriod2Mal, HemmaPeriod3Mal, BortaPeriod3Mal, HemmaPeriod4Mal, BortaPeriod4Mal, HemmaPeriod5Mal, BortaPeriod5Mal FROM (Elitserien AS elit INNER JOIN Lag_i_Elitserien AS L1 ON L1.ID=elit.HemmaLag) INNER JOIN Lag_i_Elitserien AS L2 ON L2.ID=elit.BortaLag WHERE omgang=" & valdomgang & " AND Sasong1=" & Sasong2 & " ORDER BY Datum"
Set rstResultat=objConnect.Execute(strSQL)
End If
End If
If rstResultat.EOF Then
Response.Write "Databasen är tom"

Värdet i "Sasong2" kommer från en länk som ser ut så här:localhost/Elitseriematcher.asp?Sasong2=2001-2002

När jag testar i Access frågor så fungerar det.

Kan någon se vad det kan vara för fel??

LarsGMedlem sedan dec. 200012 465 inlägg
#2
strSQL1="SELECT DISTINCT Omgang AS Omg FROM Elitserien where Sasong='" & Sasong2 & "'"
RalleMedlem sedan feb. 2003209 inlägg
#3

Tackar tackar, nu fungerar den biten bra.

Men jag har fortfarande problem när jag väljer med drop-listan.

Det verkar som värdet förvinner.

Någon som har en ide???

@ndersMedlem sedan juni 200026 914 inlägg
#4

Vad menar du med att "värdet försvinner"?

RalleMedlem sedan feb. 2003209 inlägg
#5

När jag startar sidan så finns ju värdet från länken.

Men när jag väljer en omgång så försvinner slutet av länken, värdet verkar alltså försvinna.

Den startar om sidan, men utan slutet av länken.

localhost/Elitseriematcher.asp?Sasong2=2001-2002
blir:
localhost/Elitseriematcher.asp

Hoppas du förstår vad jag menar??

@ndersMedlem sedan juni 200026 914 inlägg
#6

Den postar ju formuläret vid onchange, vilket innebär att den går till sidan som är angiven i action-attributet i <form>-taggen. Se till så querystringen hänger med i din action, så borde det inte vara några problem.

RalleMedlem sedan feb. 2003209 inlägg
#7

Jag fick hjälp med den här koden av en kille här, så jag är inte så bra på det.

Lite hjälp kanske??

@ndersMedlem sedan juni 200026 914 inlägg
#8
Response.Write("<Form name=""omgang"" action="""& Request.ServerVariables("SCRIPT_NAME") [b]& "?Sasong2=" & Sasong2 & [/b]""" method=""post"">")
RalleMedlem sedan feb. 2003209 inlägg
#9

Tackar, nu fungerar det perfekt.

Genererad på 380 ms · cache AV · v20260730165559-full.f96bc7eb