webForumDet fria alternativet

problem med värden i querystring

3 svar · 137 visningar · startad av timedia

timediaMedlem sedan maj 2001420 inlägg
#1

Detta är inte snyggt - ska försöka skriva rent när det funkar. Problemet här är att jag inte får ut nåt värde när jag testar.

<% If Request.QueryString("id") <> "" Then 
Set RS = Server.CreateObject("ADODB.Recordset")
Visa = "SELECT Id, Lan FROM Lan ORDER BY Id"

RS.Open Visa, Connect  %>
<td width="320" height="15" align="left" valign="top" class="bildtext">
<b>Välj län:</b><br>
<form>
<input type="hidden" name="id" value="<%Request.QueryString("id")%>">
<select name="lan" size="5">
<%
Do While Not rs.EOF
%>
<option value="<% =rs("lan") %>"><% =rs("lan")%></option>
<%
rs.MoveNext
Loop
RS.Close: Set rs = nothing
%>
</select> <input type="submit" value="Search" name="Action"></form>
<%else%>
<% If Request.Form("id") <> "" AND Request.Form("lan") <> "" Then 
			Response.Write "båda formulärvärden = aktiva"
Set RS = Server.CreateObject("ADODB.Recordset")
Visa = "SELECT Kategori, Kommun, Lanktxt, Lank from Lankar WHERE Kategori=" & request.querystring("id")

response.write RS("lanktxt")
end if
%>
<%end if%>
voigtann1Medlem sedan juni 20019 519 inlägg
#2
<input type="hidden" name="id" value="<%Request.QueryString("id")%>">

Ska det inte vara:

<input type="hidden" name="id" value="<%[b]=[/b]Request.QueryString("id")%>">

???

Fast det bästa sättet är väl ändå om du sätter Request.querystring("ID") till en variabel istället... :

ID = Request.querystring("ID")

... tror det blir snabbare kod också (inte något att hurra över men ändå)

timediaMedlem sedan maj 2001420 inlägg
#3

Självklart :r
,men funkar fortfarande inte..

<% 
ID = Request.querystring("ID")
If ID <> "" Then 
Set RS = Server.CreateObject("ADODB.Recordset")
Visa = "SELECT Id, Lan FROM Lan ORDER BY Id"

RS.Open Visa, Connect  %>
<td width="320" height="15" align="left" valign="top" class="bildtext">
<b>Välj län:</b><br>
<form>
<input type="hidden" name="id" value="<% =ID %>">
<select name="lan" size="5">
<%
Do While Not rs.EOF
%>
<option value="<% =rs("lan") %>"><% =rs("lan")%></option>
<%
rs.MoveNext
Loop
RS.Close: Set rs = nothing
%>
</select> <input type="submit" value="Search" name="Action"></form>
<%else%>funkar ju
<% If Request.Form("id") <> "" AND Request.Form("lan") <> "" Then 
			Response.Write "båda formulärvärden = aktiva"
Set RS = Server.CreateObject("ADODB.Recordset")
Visa = "SELECT * from Lankar WHERE Kategori = ID"

response.write RS("Lanktxt")
end if
%>
<%end if%>
Engine^Medlem sedan dec. 20003 887 inlägg
#4

Du glömmer att öppna ditt recordset i else-satsen, så där borde du få ett felmeddelande.

Du måste inte ta med Id i SELECT-delen i din första SQL-sats - det räcker med lan.

121 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
118 ms — hämta tråd, inlägg och bilagor (db)