webForumDet fria alternativet

Aktiva besökare, fel!

ASP

2 svar · 247 visningar · startad av webbSAJTEN

Medlem sedan jan. 2002992 inlägg
Frågan#1

Tjenare igen :D

Skulle vilja få funtionen aktiva besökare att fungera.

set objCon = Server.CreateObject("ADODB.Connection")
	objCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("online/online.mdb")  &";" _
		& "Jet OLEDB:Database Password=;"
	
	objCon.Execute "Delete From tblOnline Where DateDiff('n', fldDate, Now()) > 15"
	
	'ingOnline = Ubound(objCon.Execute("Select fldSessionID From tblOnline").GetRows, 2) + 1
	
	objCon.Close
Set objCon = Nothing

Det är inte jag som kodat de, men det som händer om jag tar bort "komentera bort-tecknet" är att jag får felmess:

ADODB.Recordset error '800a0bcd'

Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.

/top.asp, line 18

och linje 18 är just
ingOnline = Ubound(objCon.Execute("Select fldSessionID From tblOnline").GetRows, 2) + 1

Vad betyder felmesset och hur ska jag bli kvitt det?

Medlem sedan juni 200032 967 inlägg
#2

Du kan inte använda GetRows på ett tomt recordset. Så precis som vanligt: Kör SQL-frågan och kontrollera sedan att inte recordsetet är EOF innan du gör något.

Extremt mycket smartare vore väl dock att köra en SELECT COUNT(*) FROM.... istället.

Medlem sedan jan. 2002992 inlägg
#3

Jo, de har du faktiskt rätt i :D
Får testa de och återkomma senare!

248 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
119 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)