|
HerTürlü.Net' in portal bölümünde sol sütunda olduğu gibi o anda sitede kaç kullanıcı olduğunu göstermek isterseniz aşağıdaki kodu kullanabilirsiniz.
Bu kodu bir örneğin activeusers.asp adı ile kaydedip daha sonra da kullanmak istediğiniz noktada
<!-- #include file="activeusers.asp" -->
ile görüntülenmesini sağlayabilirsiniz...
Aşağıdaki kodu kopyalayın, ancak lisans hakları ile ilgili satırları kaldırmayın... Wirednow' dan alınmıştır.
<% 'Script Language=VBScript %>
<%
' VisitorCount - Non Global.asa version
' Copyright Doug Rathbone - WiredNow.net
' website: http://www.wirednow.net
' If this portion of the code is removed you
' are voiding the copyright and may be liable
' Logs the active user so that the rest of the script can know the active users....
Sub LogNewUser
Dim strUserList
Dim intUserStart, intUserEnd
Dim strUser
Dim strDate
strUserList = Application("UserList")
If Instr(1, strUserList, Session.SessionID) > 0 Then
Application.Lock
intUserStart = Instr(1, strUserList, Session.SessionID)
intUserEnd = Instr(intUserStart, strUserList, "|")
strUser = Mid(strUserList, intUserStart, intUserEnd - intUserStart)
strUserList = Replace(strUserList, strUser, Session.SessionID & ":" & Now())
Application("UserList") = strUserList
Application.UnLock
Else
Application.Lock
Application("ActiveUsers") = CInt(Application("ActiveUsers")) + 1
Application("UserList") = Application("UserList") & Session.SessionID & ":" & Now() & "|"
Application.UnLock
End If
End Sub
'Cleans up the user count so that the script can read the user details from it...
Sub ActiveUserCleanup
Dim ix
Dim intUsers
Dim strUserList
Dim aActiveUsers
Dim intActiveUserCleanupTime
Dim intActiveUserTimeout
intActiveUserCleanupTime = 1 'In minutes, how often should the UserList be cleaned up.
intActiveUserTimeout = 20 'In minutes, how long before a User is considered Inactive and is deleted from UserList
If Application("UserList") = "" Then Exit Sub
If DateDiff("n", Application("ActiveUsersLastCleanup"), Now()) > intActiveUserCleanupTime Then
Application.Lock
Application("ActiveUsersLastCleanup") = Now()
Application.Unlock
intUsers = 0
strUserList = Application("UserList")
strUserList = Left(strUserList, Len(strUserList) - 1)
aActiveUsers = Split(strUserList, "|")
For ix = 0 To UBound(aActiveUsers)
If DateDiff("n", Mid(aActiveUsers(ix), Instr(1, aActiveUsers(ix), ":") + 1, Len(aActiveUsers(ix))), Now()) > intActiveUserTimeout Then
aActiveUsers(ix) = "XXXX"
Else
intUsers = intUsers + 1
End If
Next
strUserList = Join(aActiveUsers, "|") & "|"
strUserList = Replace(strUserList, "XXXX|", "")
Application.Lock
Application("UserList") = strUserList
Application("ActiveUsers") = intUsers
Application.UnLock
End If
End Sub
' Shows the amount of users surfing the site
Call LogNewUser()
Call ActiveUserCleanup()
Response.Write Application("ActiveUsers")
%>
|
Anahtar Kelimeler : asp, code, include, visitor, counter, active, users, Application, cint, session, lock, unlock, id
Dersleri RSS ile takip edin...
Konuya link vermek isterseniz bu adresi kullanabilirsiniz.
http://www.herturlu.net/dersgoster.asp?id=27
Lütfen kaynak belirtmeyi unutmayınız...
|