webForumDet fria alternativet

Objekt krävs.. (?)

3 svar · 230 visningar · startad av Gein

GeinMedlem sedan sep. 20005 700 inlägg
#1
<!-- #include file="adovbs.inc" -->
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("grabsen.mdb")&";"
Uppdatera = "UPDATE users SET TIMESTAMP = "&time&" WHERE SESSIONID ="&Session.SessionID&""
Response.Write(Uppdatera)
'Connect.Execute(Uppdatera)
Connect.Close
Set Connect = Nothing

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("grabsen.mdb")&";"
Kolla = "SELECT * FROM users"
RecSet.Open Kolla, Connect, adOpenStatic, adLockOptimistic '*

Do Until RecSet.EOF

	If DateDiff("n", time, RecSet("TIMESTAMP")) < - 1 then

		Set RecSetUpdate = Server.CreateObject("ADODB.Recordset")
		Uppdatera = "UPDATE users SET SESSIONID = '"&Session.SessionID&"', ONLINE = 0 WHERE SESSIONID = "&RecSet("SESSIONID")&""
		RecSetUpdate.Open Uppdatera, Connect, adOpenStatic, adLockOptimistic
		RecSetUpdate.Close
	end if

RecSet.MoveNext
Loop
%>

så här ser min .inc fil ut, som jag tänkte ha, men jag får felmeddelande på rad 14, Objekt krävs.. jag har markerat raden med en *:a.
Kan jag inkludera en fil innuti en include fil, som jag har gjort?, det borde väl gå.

------------------
"When there's no more room in hell,
the dead will walk the earth."
--------------------- http://shortenings.cjb.net

[Redigerat av puzze den 20 sep 2001]

@ndersMedlem sedan juni 200032 969 inlägg
#2

Du har inte skapat RecSet.

Set RecSet = Server.CreateObject("ADODB.RecordSet")

------------------
All your base are belong to me.

emissionMedlem sedan dec. 19996 721 inlägg
#3

...och dessutom är det bara resursslöseri att skapa Connection-objektet två gånger, söka ut informationen som ska uppdateras och att skapa ett recordset när man kör en UPDATE.

Denna kod gör exakt samma sak som din, fast snabbar.

<!-- #include file="adovbs.inc" -->
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("grabsen.mdb")&";"
Uppdatera = "UPDATE users SET TIMESTAMP = " & time & " WHERE SESSIONID =" & Session.SessionID
Response.Write Uppdatera
'Connect.Execute Uppdatera,,128

Kolla = "UPDATE users SET ONLINE = 0 WHERE DATEDIFF('n',time(),[TIMESTAMP])<-1"
Connect.Execute Kolla,,128
%>

------------------
/emission
If you see someone without a smiley, give them your colon.

puzzeMedlem sedan sep. 20005 700 inlägg
#4

tackar!, snacka om att komprimera koden.. jag har mycket att lära!

------------------
"When there's no more room in hell,
the dead will walk the earth."
---------------------
http://shortenings.cjb.net

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