Parametrarna är felaktiga, ligger utanför tillåtet intervall eller skapar en inbördes konflikt.
set oppna=server.createobject("ADODB.connection")
oppna.Open "driver={Microsoft Access Driver (*.mdb)}; dbq=" & server.mappath("db\marken")
set recset=server.createobject("ADODB.recordset")
if request.querystring("ordning")="avdelning" then
dbed="SELECT * FROM scoutm ORDER BY avdelning"
elseif request.querystring("ordning")="namn" then
dbed="SELECT * FROM scoutm ORDER BY marke"
elseif request.querystring("ordning")="placering" then
dbed="SELECT * FROM scoutm ORDER BY placering"
end if
recset.open dbed, oppna, adopenstatic, adlockoptimistic <-- felet ligger här
Koden fungerar om jag tar bort alla ifar och sån't
set oppna=server.createobject("ADODB.connection")
oppna.Open "driver={Microsoft Access Driver (*.mdb)}; dbq=" & server.mappath("db\marken")
set recset=server.createobject("ADODB.recordset")
dbed="SELECT * FROM scoutm ORDER BY avdelning"
recset.open dbed, oppna, adopenstatic, adlockoptimistic
Vad har recset.open för inställning till if:ar igentligen?
[red]
set oppna=server.createobject("ADODB.connection")
oppna.Open "driver={Microsoft Access Driver (*.mdb)}; dbq=" & server.mappath("db\marken")
if request.querystring("ordning")="avdelning" then
dbed="SELECT * FROM scoutm ORDER BY avdelning"
elseif request.querystring("ordning")="namn" then
dbed="SELECT * FROM scoutm ORDER BY marke"
elseif request.querystring("ordning")="placering" then
dbed="SELECT * FROM scoutm ORDER BY placering"
end if
Set recset = oppna.Execute(dbed)
[/red]
testa så om inte det funkar så skriv ut dbed innan den executas med
det funkade inte. Skulle recset.open vara med nånstans i den koden? response.write (dbed) ger SELECT * FROM scoutm ORDER BY marke när ordning är = namn
[red]
set oppna=server.createobject("ADODB.connection")
oppna.Open "driver={Microsoft Access Driver (*.mdb)}; dbq=" & server.mappath("db\marken")
if request.querystring("ordning")="avdelning" then
dbed="SELECT * FROM scoutm ORDER BY 'avdelning'"
elseif request.querystring("ordning")="namn" then
dbed="SELECT * FROM scoutm ORDER BY 'marke'"
elseif request.querystring("ordning")="placering" then
dbed="SELECT * FROM scoutm ORDER BY 'placering'"
end if
Set recset = oppna.Execute(dbed)
[/red]
[red]
set oppna=server.createobject("ADODB.connection")
oppna.Open "driver={Microsoft Access Driver (*.mdb)}; dbq=" & server.mappath("db\marken")
set recset=server.createobject("ADODB.recordset")
if request.querystring("ordning")="avdelning" then
dbed="SELECT * FROM scoutm ORDER BY avdelning"
elseif request.querystring("ordning")="namn" then
dbed="SELECT * FROM scoutm ORDER BY marke"
elseif request.querystring("ordning")="placering" then
dbed="SELECT * FROM scoutm ORDER BY placering"
end if
recset.open dbed, oppna, 3, 3
[/red]
set oppna=server.createobject("ADODB.connection")
oppna.Open "driver={Microsoft Access Driver (*.mdb)}; dbq=" & server.mappath("db\marken")
set recset=server.createobject("ADODB.recordset")
if request.querystring("ordning")="avdelning" then
dbed="SELECT * FROM scoutm ORDER BY avdelning"
elseif request.querystring("ordning")="namn" then
dbed="SELECT * FROM scoutm ORDER BY marke"
elseif request.querystring("ordning")="placering" then
dbed="SELECT * FROM scoutm ORDER BY placering"
elseif request.form("find") then
dbed="SELECT * FROM scoutm WHERE marke LIKE '%" & replace(request.form("find"),"'","''") & "%'"
end if
set recset = oppna.execute(dbed)
sökfunktionen längst ner fick jag av Lars G, men jag har inte riktigt kommit på hur den fungerar än ;)
recset.open dbed, oppna, 3, 3 fungerade. Får man gissa att 3orna står för adlockstatic och adlockoptimistic?
Jag hade lagt in det du ska köra ORDER by i QueryStringen och på det sättet sluppit alla dessa IF satser
Då skulle det kunna se ut så här:
[red]
<%
'************************************************
Dim strOrderBy
'************************************************
strOrderBy = Cstr(Request.QueryString("ordning"))
'************************************************
If Request.Form > "" Then
dbed="SELECT * FROM scoutm ORDER BY "&strOrderBy
Else
dbed="SELECT * FROM scoutm WHERE marke LIKE '%" & replace(request.form("find"),"'","''") & "%'"
End If
'************************************************
Set objCon = Server.CreateObject("ADODB.Connection")
objCon.Provider = "Microsoft.Jet.OLEDB.4.0"
objCon.ConnectionString = "Data Source="& Server.MapPath("db\marken.mdb")
objCon.open
set recset = objCon.Execute(dbed)
'************************************************
%>
[/red]