webForumDet fria alternativet

Kontrollera innehållet i Querystring

ASPur ASP

8 svar · 342 visningar · startad av karlj87

karlj87Medlem sedan mars 2004662 inlägg
#1

Hej!

Sitter här och försöker lära mig lite. Kan man på nåt sätt skriva såhär?

<%
If "id" finns med i querystringen then
response.write("text")
end if
%>

Helt enkelt, hur kollar man om "id" finns med i querystringen?

tack på förhand!

@ndersMedlem sedan juni 200032 969 inlägg
#2
if instr(request.querystring, "id") > 0 then
karlj87Medlem sedan mars 2004662 inlägg
#3

När jag använde koden du skrev fick jag följande fel:

Kompileringsfel i Microsoft VBScript error '800a0411'

Namnet har omdefinierats.

adovbs.inc, line 14

Testade då att köra det som du skrev ensamt på en testsida och då funkade det. x( :l Vad betyder felet ovan?

Peter SMedlem sedan dec. 20025 483 inlägg
@ndersMedlem sedan juni 200032 969 inlägg
#5

Det kan inte ha att göra med koden jag skrev.

Felet får du för att du skrivit dim variabelnamn på mer än ett ställe. Har du definierat konstanter i din fil, och inkluderat adovbs.inc också?

karlj87Medlem sedan mars 2004662 inlägg
#6

Tack för snabba svar. :bire Får titta på det ikväll.

@ndersMedlem sedan juni 200032 969 inlägg
#7

Det är alltså nyckelorden dim eller const som använts mer än en gång på samma variabel/konstant. Du hittar säkert felet när du kikar i dina filer.

Lycka till! :bire

karlj87Medlem sedan mars 2004662 inlägg
#8

Det verkar som det är den här koden:


<!-- 
ARTIKLAR v.1                                               www.JoakimWeb.se 
Denna applikation är skriven av Joakim på JoakimWeb.se. Du får använda
applikationen fritt, under förutsättning att denna copyrighttext förblir
intakt. Du får fritt modifiera/komplettera skriptet, du får dock inte 
använda det för kommersiella syften. Du får inte lägga ut en modifierad
version av detta skript på ett sätt som gör att andra kan ladda ner det.
Om inte dessa kvar uppfylles så har du ingen rätt att använda skriptet.
-->
<!-- #include file = "adovbs.inc" -->
<%
Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("artiklar.mdb")

	Set RecSet = Server.CreateObject("ADODB.Recordset")
	SQL = "SELECT * FROM artiklar WHERE id = " & Request.Querystring("id")
	SQL = SQL & " ORDER BY rubrik"
	RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic
%>
  <tr> 
    <td class="rubrik"><% =RecSet("rubrik") %></td>
  </tr>
  <tr> 
    <td class="ingress"><% =RecSet("ingress") %></td>
  </tr>
    <tr> 
    <td class="brodtext"><%text = server.htmlencode(RecSet("innehall"))%><%= Replace(text,vbCrLf,"<br>")%></td>
  </tr>
  <tr> 
    <td class="ingress">Skriven av:&nbsp; <a href="mailto:<%=RecSet("epost")%>"><%=RecSet("av")%></a> </td>
  </tr>
  <tr>
    <td class="ingress">Datum:&nbsp; <%=RecSet("datum")%> </td>
  </tr>
  
  <%
RecSet.Close
Connect.Close
Set RecSet = Nothing
Set Connect = Nothing
%>

Som skär sig med den här:

<!--
ARTIKLAR v.1                                               www.JoakimWeb.se 
Denna applikation är skriven av Joakim på JoakimWeb.se. Du får använda
applikationen fritt, under förutsättning att denna copyrighttext förblir
intakt. Du får fritt modifiera/komplettera skriptet, du får dock inte 
använda det för kommersiella syften. Du får inte lägga ut en modifierad
version av detta skript på ett sätt som gör att andra kan ladda ner det.	 
Om inte dessa kvar uppfylles så har du ingen rätt att använda skriptet.
-->
<!-- #include file = "adovbs.inc" -->
<%
Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("artiklar.mdb")

	Set RecSet = Server.CreateObject("ADODB.Recordset")
	SQL = "SELECT * FROM artiklar ORDER BY datum DESC"
	RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic
%>
<%
raknare = 0
Do Until RecSet.EOF OR raknare = 5
'Filtrera det som ska visas efter efterfrågad kategori
If RecSet("typ") = category OR category = "" then
%>
<tr>
    <td class="rubrik"><a href="las.asp?id=<%=RecSet("id")%>"><%=RecSet("rubrik")%></a></td>
<tr>
    <td class="ingress"><a href="las.asp?id=<%=RecSet("id")%>"><%=RecSet("ingress")%></a></td>
</tr>
<tr>
    <td class="bordtext"><a href="las.asp?id=<%=RecSet("id")%>"><%=RecSet("typ")%> - <%=RecSet("datum")%></a></td>
</tr>
  
    <%
	End if

raknare = raknare + 1
RecSet.MoveNext
Loop
%>
<%
RecSet.Close
Connect.Close
Set RecSet = Nothing
Set Connect = Nothing
%>

Men var i ligger felet?

Tack.

Peter SMedlem sedan dec. 20025 483 inlägg
#9

Felet ligger i att adovbs.inc inkluderas på två ställen.

:)

251 ms totalt · 3 externa anrop · v20260731065814-full.29ac60f6
128 ms — hämta forumlista (db)
121 ms — hämta statistik (db)
124 ms — hämta tråd, inlägg och bilagor (db)