<%
Dim conn7
Dim rs7
Dim katwertResponse.Buffer = false
katwert = Request.Querystring("Kategorie")
Set conn7 = Server.CreateObject("ADODB.Connection")
conn7.Open g_FIXX_strConnectb
Set rs7 = Server.CreateObject("ADODB.Recordset")
query = "select * from kunden Where Ebene='Ebene1' AND Kategorie='" &katwert& "' AND Bannergroesse='Vollbanner'"
Set rs7 = conn7.Execute(query)
response.write query
%>
<a href="http://<%=rs7.Fields(7).Value%>" target="_blank"><img border="0" src="<%=rs7.Fields(4).Value%>"></a>
<%
rs7.Close
conn7.Close
%>Wenn ich die Seite mit den entsprechenden Parametern starte kommt die Meldung:
Entweder BOF oder EOF ist True, oder der aktuelle DS wurde gelöscht; die von der Anwendung angeforderte Operation benötigt einen aktuellen DS
Hallo Martin,
generell sollte man den Fehler, daß kein DS gefunden wurde mit:
<%
If rs7.EOF Then
' --- Fehler, kein Satz
Else
' --- Hier gehts weiter
...
End if
%>
abfangen. In Deinem Fall denke ich, daß der folgende Teil keinen Wert ergibt.
katwert = Request.Querystring("Kategorie")
Wir denn Kategorie als URL-Parameter übergeben?`
Probier mal
<% katwert = Request("Kategorie") %>
Dann nimmt ASP entweder den Parameter aus dem QueryString oder der Form-Collection (wenn die Daten per POST übermittelt wurden)
Noch eins: Bei einem Select Statement sollte man das Recorset nicht mit <% Set rs = conn.Execute(SQL) %> instantiieren.
Execute kann (und sollte) man bei DML-Statements (UPDATE, INSERT, DELETE, ...) verwenden.
Bei SELECT ist folgendes besser:
<%
Set RS = Server.CreateObject("ADODB.Recordset")
RS.Open SQL, conn, 3, 3
...
RS.Close
Set RS = Nothing
%>
Tschau, Stefan