webForumDet fria alternativet

På rulande sten växer ingen mossa. Här kommer en fråga om Global.asa

ASP

3 svar · 226 visningar · startad av klementin

Medlem sedan aug. 2001117 inlägg
Frågan#1

Varför uppdaterar inte min Global.asa databasen som jag vill? Filen funkar förövrigt bra (med app. Online ialla fall). Här är koden:

<SCRIPT LANGUAGE=VBScript RUNAT=Server>
Sub Application_OnStart
Application("Online") = 0
End Sub
Sub Session_OnStart
Session.TimeOut = 1
Session("Start") = Now
Application.Lock
Application("Online") = Application("Online") + 1
Application.UnLock
End Sub
Sub Session_OnEnd
Application.Lock
Application("Online") = Application("Online") - 1
Application.UnLock

DBPath = Server.MapPath("\MINSÖKVÄGTILLDATABASEN.mdb")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DBPath & ";"
SQL = "UPDATE UserInfo SET "
SQL = SQL & "WebUserActive = 'Nej' "
SQL = SQL & "WHERE WebUserName = '" & Session("WebUserName") & "' "
Conn.Execute(SQL)

Session.Abandon

End Sub

</SCRIPT>

Jag vet att detta ämne är ur vattnat men jag har läst alla möjliga inlägg angående detta men får det ialla fall inte att fungera.

Tack på förhand

------------------
/Klementin
-----------------------
C:\DOS
C:\DOS\Run
Run DOS Run
-----------------------

Medlem sedan mars 20002 836 inlägg
#2

Hello,

skulle tro att det är denna rad som spökar:

SQL = SQL & "WHERE WebUserName = '" & Session("WebUserName") & "' "

själv skulle jag vid en inloggning spara Session.SessionID i ett fält i databasen och sedan verifiera mot det när sessionen slutar.

cya,
PatrikB

------------------
*ordning och reda!, pengar på fredag.*

Medlem sedan apr. 200171 inlägg
#3

Du har inget application.lock / unlock här...

Sub Application_OnStart
Application("Online") = 0
End Sub

------------------
- Rickard
http://cherub.deca-production.net
"You say I'm beautiful. Well, I can't help it! You say I'm empty. We all know I'm full of shit!"

Medlem sedan aug. 2001117 inlägg
#4

Nu har jag gjort så här att när man loggar in så uppdateras ett fält i databasen med personens sessions ID sen skrev jag så här i Global.asa:

DBPath = Server.MapPath("\SÖKVÄG.mdb")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DBPath & ";"
SQL = "UPDATE UserInfo SET "
SQL = SQL & "WebUserActive = 'Nej' "
SQL = SQL & "WHERE WebUserSessionID = '" & Session.SessionID & "' "
Conn.Execute(SQL)

Men icke sa Nicke det fungerar inte, men det vara kanske inte så här du menade?

------------------
/Klementin
-----------------------
C:\DOS
C:\DOS\Run
Run DOS Run
-----------------------

[Redigerat av klementin den 20 sep 2001]

924 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
788 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
786 ms — ändringar (db)