Databas problem

ASP

5 svar · 239 visningar · startad av Kompis

Medlem sedan mars 20014 inlägg
Trådstart#1

Hej, jag har ett problem, jag tänkte lägga upp några bokrecensioner i en databas. Först ska det komma om en lista med länkar som plockas från databasen (titeln). Och när man klickar på länken ska recensionen för den boken komma fram. jag har skrivit följande:
<% If Request.QueryString("alt") = "view" Then %>
<CENTER>Litteratur</CENTER>

\<% Visa = "SELECT\*FROM bok ORDER BY ID DESC"
RecSet.Open Visa,Connect,adOpenStatic,adLockOptimistic %\>

\<% Z=1 %\>
\<%Do  While Z\<100
	If RecSet.EOF Then
		Exit DO
	End If%\>
	
	\<A HREF="bookview.asp?Visa=\<% =RecSet("Titel") %\>"\>\<% =RecSet("Titel") %\>\</A\>\<BR\>
	\<% RecSet.MoveNext
	Z=Z+1
	Loop %\>

<%ElseIf Request.QueryString("Visa") = "=RecSet('Titel')" Then
<% Visa = "SELECT*FROM bok WHERE Titel='=RecSet("&Titel&")' ORDER BY ID DESC"
RecSet.Open Visa,Connect,adOpenStatic,adLockOptimistic %>
<% Do Until RecSet.EOF %>
Titel: <%=RecSet("Titel")%><BR>
Recension: <%=RecSet("Rec")%><BR>

\<% RecSet.Close

End If %>

Och jag får, följande felmeddelande:

Microsoft VBScript compilation error '800a0400'

Expected statement

/starwars/asp/bookview.asp, line 38

<% Visa = "SELECT*FROM bok WHERE Titel='=RecSet("&Titel&")' ORDER BY ID DESC"

Hur ska man skriva för att detta ska fungera? Som ny säkert se är jag nybörjare vad det gäller asp. Tack på förhand.
/Daniel

Medlem sedan mars 20014 214 inlägg
#2

Du kan väl inte skriva =RecSet när du redan är inom <% %>

Du måste då skriva &"RecSet("ditt_fält")"&

btw: välkommen till wf

Medlem sedan mars 2001309 inlägg
#3

Båda dom här raderna ser lite lustiga ut !!

<%ElseIf Request.QueryString("Visa") = "=RecSet('Titel')" Then
<% Visa = "SELECT*FROM bok WHERE Titel='=RecSet("&Titel&")' ORDER BY ID DESC"

Dom borde ser ut så här

<%ElseIf Request.QueryString("Visa") =RecSet('Titel') Then
<% Visa = "SELECT*FROM bok WHERE Titel= '" & RecSet("&Titel&") & " ' ORDER BY ID DESC"
Medlem sedan dec. 200012 464 inlägg
#4

Det är enklare att se om du inte har så många <% %>. Nu hade det blivit ett för mycket.

Jag ändrade också på din kod för att visa en recension då den inte skulle fungera som den var.

<%
If Request.QueryString("alt") = "view" Then 
%>
<CENTER>Litteratur</CENTER>

<% 
Visa = "SELECT*FROM bok ORDER BY ID DESC"
RecSet.Open Visa,Connect,adOpenStatic,adLockOptimistic

Z=1
Do While Z<100
If RecSet.EOF Then
Exit DO
End If
%>

<A HREF="bookview.asp?Visa=<% =recset("ID") %>"><% =RecSet("Titel") %></A><BR>
<% 
RecSet.MoveNext
Z=Z+1
Loop
recset.close
elseif len(request.querystring("visa")) > 0 then
Visa = "SELECT*FROM bok WHERE ID = "& request.querystring("visa") 
RecSet.Open Visa,Connect,adOpenStatic,adLockOptimistic
Do Until RecSet.EOF 
%> 
Titel: <%=RecSet("Titel")%><BR>
Recension: <%=RecSet("Rec")%><BR>
recset.movenext
loop
recset.close
End If

%>

red: Det är bättre att använda ID i querystring

Medlem sedan mars 20014 214 inlägg
#5

LarsG: Har du inte glömt något här ;)

<A HREF="bookview.asp?Visa=<% =recset("ID") %>"><% =RecSet("Titel") %></A><BR>
<% 
RecSet.MoveNext
Z=Z+1
Loop
recset.close
elseif len(request.querystring("visa")) > 0 then
Visa = "SELECT*FROM bok WHERE ID = "& request.querystring("visa") 
RecSet.Open Visa,Connect,adOpenStatic,adLockOptimistic
Do Until RecSet.EOF 
%> 
Titel: <%=RecSet("Titel")%><BR>
[b]Recension: <%=RecSet("Rec")%><BR>
recset.movenext[/b]
loop
recset.close
End If
<A HREF="bookview.asp?Visa=<% =recset("ID") %>"><% =RecSet("Titel") %></A><BR>
<% 
RecSet.MoveNext
Z=Z+1
Loop
recset.close
elseif len(request.querystring("visa")) > 0 then
Visa = "SELECT*FROM bok WHERE ID = "& request.querystring("visa") 
RecSet.Open Visa,Connect,adOpenStatic,adLockOptimistic
Do Until RecSet.EOF 
%> 
Titel: <%=RecSet("Titel")%><BR>
Recension: <%=RecSet("Rec")%><BR>
[b]<%[/b]recset.movenext
loop
recset.close
End If
Medlem sedan mars 20014 inlägg
#6

Tusen tack !!
Nu fungerar det perfekt, jag förstår att jag har mycket att lära inom asp.
/Daniel

255 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
119 ms — ändringar (db)