Set RSoff = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT online_status,online_time FROM tblUser WHERE online_status = 'online'"
RSoff.Open strSQL, Conn, 3, 3
Do until RSoff.eof
If RSoff("online_status") = "online" AND DateDiff("n", RSoff("online_time"), Now) > 20 Then
RSoff("online_status") = "offline"
RSoff.Update
End If
RSoff.movenext
loop
Det konstiga felmeddelandet är
Microsoft OLE DB Provider for ODBC Drivers fel '80040e21'
En OLE DB-åtgärd i flera steg genererade fel. Kontrollera alla OLE DB-statusvärden som finns tillgängliga. Inget arbete utfördes.
Det hela fungerade till en början några gånger, sen gick det käpp rätt åt helvette Har provat att sätta några users i databasen till online för att se om det var det som var fel, men nopp.
Någon som har en aning?
Kan väl tillägga att det är mySQL jag lirar med, inte för att jag tror att det spelar någon roll. men iaf
och då fungerade det att logga in på sidan, för jag kör den kontrollen på inloggningssidan.
Men när man väl är inne på sidan, så finns det ännu en likadan funktion i en frame och den kör fortfarande
strSQL = "SELECT online_status,online_time FROM tblUser WHERE online_status = 'online'"
RSoff.Open strSQL, Conn, 3, 3
och den fungerar, utan att krasha, trots att jag gjort "Copy'n'paste" på koden. Jag vill helst kunna använda "Where online = 'online'" i SQL frågan, för det borde väl gå lite fortare?
Avvaktar med att markera som rätt svar tills jag fått svar på vad som e galet
249 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91