Ciao ragazzi, ho usato (da questo sito) lo script per l'identificazione dei nomi degli utenti presenti sul sito. Ecco lo script:
GLOBAL.ASA
-------------------------------------------
<SCRIPT language="VBScript" Runat="Server">
Sun Session_OnStart
session("login") = false
end sub
Sub Session_OnEnd
if session("login") then
Application.Lock
Application("Users") = Replace( Application("Users") , Session("utente") & "|" ,"")
'quando scade una sessione viene eliminato il nome dell'utente dalla variabile di
'applicazione che contiene l'elenco degli utenti attivi
Application.UnLock
end if
End Sub
</SCRIPT>
ho seguito il consiglio di TIA86 sul forum (http://forum.html.it/forum/showthrea...hreadid=677467) ma ho il dubbio che la parte che ho segnato in rosso non sia corretta.
la pagina di autenticazione:
-------------------------------------------------
<%
dim user, pass
user = request.form("user")
pass = request.form("pass")
Set Conn=Server.CreateObject("ADODB.Connection")
strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../mdb-database/interventi.mdb")
Conn.Open strConn
sql = "SELECT * FROM registrazione_utente1"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.open sql, conn, 3,3
do while not(rs.eof)
if user = rs("nick") and pass = rs("pass") then
Response.Cookies("www.eonline.it")("id") = rs("id")
Response.Cookies("www.eonline.it")("user") = rs("nick")
Response.Cookies("www.eonline.it")("avatar") = rs("avatar")
Response.Cookies("www.eonline.it")("email") = rs("email")
response.cookies("www.eonline.it").Expires = date() + 365
response.cookies("www.eonline.it").Secure = false
' controllo utenti
session("login") = true
Session("utente") = rs("nick")
if InStr(1, Application("Users"), Session("utente") & "|" ) = 0 then
'se l'utente non è già presente
Application.Lock
'viene aggiunto l'utente appena loggato alla stringa che contiene
' l'elenco degli utenti
Application("Users") = Application("Users") & Session("utente") & "|"
Application.UnLock
end if
' fine controllo utenti
response.redirect "../index.asp"
end if
rs.movenext
loop
rs.Close
set rs = Nothing
conn.Close
set conn = Nothing
response.redirect "../index.asp?errore=si"
%>
e la pagina di visualizzazione degli utenti connessi:
---------------------------------------------------------------------
<%
dim arrUtenti, i
arrUtenti = Split(Application("Users"),",")
%>
<table width="190" border="0" cellpadding="1" cellspacing="0">
<tr>
<td width="19"></td>
<td width="167"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Utenti
collegati:</font></td>
</tr>
<tr>
<td></td>
<td>
<% for i = 0 to UBound(arrUtenti) %>
<font size="1" face="Verdana, Arial, Helvetica, sans-serif"><%=arrUtenti(i)%></font>
<% next %>
</td>
</tr>
</table>
io vorrei sapere:
1) come posso rendere linkabili i nomi degli utenti connessi in modo da ottenere le informazioni personali di ognuno (si dovrebbe richiamare il cookie "Response.Cookies("www.eonline.it")("id")", ma ho combinato un casino)?
2) come posso fare per far si che l'utente che chiude il browser non risulti più connesso come invece succede adesso?
3) quale script devo inserire nella pagina di logout per non fare risultare più connesso l'utente?
So che vi chiedo troppo ma sono incasinato...![]()

)?
Rispondi quotando