webForumDet fria alternativet

Problem med DateDiff

3 svar · 243 visningar · startad av SebastianE

SebastianEMedlem sedan nov. 2004100 inlägg
#1

Har problem med DateDiff av ngn anledning. Får fram felmeddelande:
error '80020009'

Koden för sidan status.inc

<%' kap 1 %>
<%
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "Provider=Microsoft.Jet.OLEDB.4.0; "&_
"Data Source="&Server.MapPath("db/anvandare.mdb")

SQL = "UPDATE anvandaren SET tid = '"&now&"' WHERE userid = '"&Session("userid")&"'"
Connection.Execute(SQL) 'Uppdaterar databasen

Connection.Close 'Stänger databasen
Set Connection = Nothing 'Frigör objektet
%>
<%' kap 2 %>
<%
Function online(userid)

Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "Provider=Microsoft.Jet.OLEDB.4.0; "&_
"Data Source="&Server.MapPath("db/anvandare.mdb")

SQL = "SELECT * FROM anvandaren WHERE userid = '"&Session("userid")&"'"
Set RS = Connection.Execute(SQL)

If DateDiff("n", RS("tid"), Now) > 15 Then 'Här det koden som har problem

   online = 0 'Inte online
  Else
   online = 1 'Online
  End If
  RS.Close 'Stänger RecordSet
  Set RS = nothing 'Frigör objektet
  Connection.Close 'Stänger databasen
  Set Connection = nothing 'Frigör objektet
End Function
%>
<%' kap 3 %>
<%
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "Provider=Microsoft.Jet.OLEDB.4.0; "&_
"Data Source="&Server.MapPath("db/anvandare.mdb")

Userid = Session("userid") 'Här anger du vilken användare du vill kolla statusen på
If online(userid) = "1" Then 'Anropar funktionen
Response.Write("Online") 'Skriver ut "Online"
Else
Response.Write("Offline") 'Skriver ut "Offline"
End If

Connection.Close 'Stänger databasen
Set Connection = Nothing 'Frigör objektet
%>
<%' kap 4 %>
<%
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "Provider=Microsoft.Jet.OLEDB.4.0; "&_
"Data Source="&Server.MapPath("db/anvandare.mdb")

tid = DateAdd("n",-6,now) 'Minskar realtiden med 6 minuter
SQL = "UPDATE anvandaren SET tid = '"&tid&"' WHERE userid = '"&Session("userid")&"'" 'Uppdaterar databasen
connection.Execute(SQL) 'Uppdaterar databasen

connection.Close 'Stänger databasen
Set connection = Nothing 'Frigör objektet
%>
@ndersMedlem sedan juni 200032 969 inlägg
#2

Jag gissar på att recordsetet är EOF, kontrollera alltid detta innan du försöker använda information från det.

Dessutom vore det jättenajsigt om du använde [kod]-taggar när du postar kod, så blir det lättare att läsa, och därmed lättare att hjälpa.

Och till sist; välkommen till wF! :bire

SebastianEMedlem sedan nov. 2004100 inlägg
#3

Nja, just det userid får ett värde på tid, så det blir inte eof. Okej, som du kanske märkte utav så har jag nyss kommit till wf så jag får snoka runt lite på sidan för att hitta saker och ting. Tack så mycket.

k0ffeMedlem sedan maj 2003352 inlägg
#4

Vilken rad ligger felet på?

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