registrare il numero di volte che un utente entra su un db

gianluigidibell

Utente Attivo
18 Lug 2007
72
0
6
Piacenza
Gentili amici
continuo a disturbarvi postando un secondo problema:
ogni volta che un utente entra in una zona riservata, deve dare login e password che sono registrare in un database.
Sarebbe possibile incrementare un contatore nel database ad ogni ingresso del loggato? In questo modo saprei che Luigi è entrato 10 volte, paolo 3, ecc ecc
O meglio, se si potrebbe sapere ogni qualvolta entra luigi il giorno e lora:
ad esempio

Luigi entrato alle 15,30 del 16 sett
Paolo entrato alle 7,30 del 18sett
Luigi entrato alle 12,30 del 19 sett
Luigi entrato alle 15,30 del 19 sett
Paolo entrato alle 17,30 del 19 sett
Grazie
 
Certo che si!

Crea una tabella che chiami, ad esempio, logcount, con i seguenti dati:

id
username
contatore

Nel campo username vai a registrate la username del loggato (o l'id, se vuoi usare un tipo di dato numerico) ed il contatore (che ha valore di default 0 alla creazione del record, che creerai insieme alla creazione dell'account) andrai ad eseguire una semplicissima query tipo:

UPDATE logcount SET contatore = contatore + 1 WHERE username = '" & variabile_username & "'

per incrementare il valore di una unità.

Per far si che questo accada all'atto del login... metti questo codice nella routine che esegue il login.

Spero di essere stato chiaro :)
 
Ho provato ma forse nn ho catipo

Innanzitutto grazie per la gentile collaborazione,
credo di nn aver capito bene come fare, in quanto ho fatto varie prove spostando la sdtringa che mi hai dato, ma ho sempre questo risultato:
Microsoft VBScript compilation error '800a0401'

Expected end of statement

/login.asp, line 33

UPDATE logcounta SET contatore = contatore + 1 WHERE username = " & variabile_username & "
-----------------^

Ecco il codice

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/Dati_auto.asp" -->
<%
Dim Rpas
Dim Rpas_numRows

Set Rpas = Server.CreateObject("ADODB.Recordset")
Rpas.ActiveConnection = MM_Dati_auto_STRING
Rpas.Source = "SELECT * FROM pasword"
Rpas.CursorType = 0
Rpas.CursorLocation = 2
Rpas.LockType = 1
Rpas.Open()

Rpas_numRows = 0

%>
<%
' *** Validate request to log in to this site.
MM_LoginAction = Request.ServerVariables("URL")
If Request.QueryString<>"" Then MM_LoginAction = MM_LoginAction + "?" + Server.HTMLEncode(Request.QueryString)
MM_valUsername=CStr(Request.Form("user"))
If MM_valUsername <> "" Then
MM_fldUserAuthorization=""
MM_redirectLoginSuccess="illi/autoxx.asp"
MM_redirectLoginFailed="Login_fallito.asp"
MM_flag="ADODB.Recordset"
set MM_rsUser = Server.CreateObject(MM_flag)
MM_rsUser.ActiveConnection = MM_Dati_auto_STRING
MM_rsUser.Source = "SELECT user, password"
If MM_fldUserAuthorization <> "" Then MM_rsUser.Source = MM_rsUser.Source & "," & MM_fldUserAuthorization
MM_rsUser.Source = MM_rsUser.Source & " FROM pasword WHERE user='" & Replace(MM_valUsername,"'","''") &"' AND password='" & Replace(Request.Form("password"),"'","''") & "'"
MM_rsUser.CursorType = 0
MM_rsUser.CursorLocation = 2
MM_rsUser.LockType = 3
MM_rsUser.Open
If Not MM_rsUser.EOF Or Not MM_rsUser.BOF Then
' username and password match - this is a valid user
Session("MM_Username") = MM_valUsername
If (MM_fldUserAuthorization <> "") Then
Session("MM_UserAuthorization") = CStr(MM_rsUser.Fields.Item(MM_fldUserAuthorization).Value)
Else
Session("MM_UserAuthorization") = ""
End If
if CStr(Request.QueryString("accessdenied")) <> "" And false Then
MM_redirectLoginSuccess = Request.QueryString("accessdenied")
UPDATE logcounta SET contatore = contatore + 1 WHERE username = " & variabile_username & "
End If
MM_rsUser.Close
Response.Redirect(MM_redirectLoginSuccess)
End If
MM_rsUser.Close
Response.Redirect(MM_redirectLoginFailed)

End If
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<META NAME=author CONTENT="Gianluigi JD2008">
<META HTTP-EQUIV="expires" CONTENT="0">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<meta name="robots" content="index, follow" >
<META NAME =description CONTENT="Area riservata ">
<meta name="keywords" content="macchine usate, nuove">
<META NAME="language" contenent="it">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<META NAME="ROBOTS" CONTENT="INDEX,FOLLOW">
<title>Riservato ai commercianti</title>
<link rel="shortcut icon" href="http://www.piacenzacars.com/pip.ico" />
<style type="text/css">
<!--
.Stile12 {font-size: 14}
.Stile13 {color: #384c57; font-family: Arial, Helvetica, sans-serif; font-size: 14; }
.Stile2 {color: #CCCCCC}
.Stile3 { color: #cf4409;
font-family: Arial, Helvetica, sans-serif;
font-size: 20px;
}
.biglietto {
background-image: url(immagini/tab_login4.gif);
background-repeat: no-repeat;
}
-->
</style>
<link href="auto.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
body {
background-color: #333333;
}
a:link {
color: #577788;
text-decoration: none;
}
a:visited {
text-decoration: none;
color: #577788;
}
a:hover {
text-decoration: underline;
color: #CCCCCC;
}
a:active {
text-decoration: none;
color: #577788;
}
.Stile14 {
color: #C6240D;
font-family: Arial, Helvetica, sans-serif;
font-size: 36px;
}
.biglietto { background-image: url(immagini/tab_login4.gif);
background-repeat: no-repeat;
}
.biglietto1 { background-image: url(immagini/tab_login4.gif);
background-repeat: no-repeat;
}
.biglietto1 {background-image: url(immagini/tab_login4.gif);
background-repeat: no-repeat;
}
.Stile15 {color: #FFFFFF}
-->
</style>
<script type="text/JavaScript">
<!--
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers.document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
} else if (test!='R') { num = parseFloat(val);
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
} if (errors) alert('The following error(s) occurred:\n'+errors);
document.MM_returnValue = (errors == '');
}
//-->
</script>
</head>

<body>
<div align="center">
<table width="900" height="182" border="0" class="up">
<tr>
<td valign="bottom"><div align="left">
<blockquote>
<p><span class="Stile2"><a href="index.asp">Home</a> :: <a href="chi.asp">Chi siamo</a> :: <a href="public/richieste.asp">Richieste</a> :: <a href="auto.asp">Le nostre auto</a> :: Login</span> </p>
</blockquote>
</div></td>
</tr>
</table>
<table width="900" height="553" border="0" class="sf">
<tr>
<td width="192" valign="top"><p>&nbsp;</p>
<table width="96%" border="0" align="center">
<tr>
<td><div align="left"><span class="Stile3">LE AUTOMOBILI</span> </div></td>
</tr>
<tr>
<td><div align="left"><span class="Stile12"></span></div></td>
</tr>
<tr>
<td><div align="left"><span class="Stile13"><a href="categorie.asp?tagauto=Berlina">Berlina</a></span></div></td>
</tr>
<tr>
<td><div align="left"><span class="Stile13"><a href="categorie.asp?tagauto=Coupe">Coupe</a></span></div></td>
</tr>
<tr>
<td><div align="left"><a href="categorie.asp?tagauto=StationWagon">Station Vagon</a></div></td>
</tr>
<tr>
<td><div align="left"><span class="Stile13"><a href="categorie.asp?tagauto=Suv">Suv</a></span></div></td>
</tr>
<tr>
<td><div align="left"><span class="Stile13"><a href="categorie.asp?tagauto=Furgoni">van</a></span></div></td>
</tr>
<tr>
<td><div align="left"><span class="Stile13"><a href="categorie.asp?tagauto=Jeep">Jeep</a></span></div></td>
</tr>
<tr>
<td><div align="left"><span class="Stile13"><a href="categorie.asp?tagauto=Sportive">Sportive</a></span></div></td>
</tr>
<tr>
<td><div align="left"><span class="Stile12"></span></div></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td><div align="center"><img src="immagini/eleganza.gif" alt="Banner" width="150" height="280" /></div></td>
</tr>
</table></td>
<td width="698" align="right" valign="middle"><table width="96%" height="532" border="0" align="right" class="sfovale">
<tr>
<td align="center" valign="top"><p class="Stile14">&nbsp;</p>
<p class="Stile14">AREA RISERVATA<img src="immagini/stop.png" alt="Area riservata" width="99" height="103" align="right" /></p>
<table width="63%" height="218" border="0" align="center" onfocus="MM_validateForm('email','','RisEmail','psw','','R');return document.MM_returnValue">
<tr>
<td><form ACTION="<%=MM_LoginAction%>" method="POST" name="form_log" id="form_log" onsubmit="MM_validateForm('user','','RisEmail','password','','R');return document.MM_returnValue">
<table width="100%" height="205" border="0" align="left">
<tr>
<td width="94%" colspan="2"><div align="left"></div></td>
</tr>
<tr>
<td><div align="left"><span class="Stile15">
</span></div> <span class="Stile15"><label>
<div align="left">Email </div>
</label>
</span></td>
<td><div align="left">
<input name="user" type="text" id="user" size="30" maxlength="50" />
</div></td>
</tr>
<tr>
<td><div align="left"><span class="Stile15">
</span></div> <span class="Stile15"><label>
<div align="left">Password </div>
</label>
</span></td>
<td><div align="left">
<input name="password" type="password" id="password" size="5" maxlength="7" />
</div></td>
</tr>
<tr>
<td><div align="left">
<input name="Submit" type="submit" onclick="MM_validateForm('email','','RisEmail','psw','','R');return document.MM_returnValue" value="Invia" />

</div></td>
<td><div align="left">
<input type="reset" name="Submit2" value="Ripristina" />
</div></td>
</tr>
<tr>
<td colspan="2"><label></label>
<label></label></td>
</tr>
<tr>
<td colspan="2"><div align="left"></div></td>
</tr>
</table>
</form></td>
</tr>
</table>
<p>&nbsp;</p>
<p class="Stile15">Accesso riservato ai soli autorizati con pasword<br />
</p>
<p class="Stile15"><span class="Stile15">Il sistema controlla il numero</span> di accessi, gli utenti e l'indirizzo IP </p></td>
</tr>
</table></td>
</tr>
</table>
<table width="900" height="238" border="0" class="fotodwn">
<tr>
<td>&nbsp;</td>
</tr>
</table>
<table width="900" height="86" border="0" class="dwn">
<tr>
<td>&nbsp;</td>
</tr>
</table>
<p>&nbsp;</p>
<p>&nbsp;</p>

</div>
</body>
</html>
<%
Rpas.Close()
Set Rpas = Nothing
%>


__________________
Forse nn ho capito bene se puoi aiutarmi.
grazie
 
Vedo che l'errore che evidenzi, nella stringa SQL, punta la freccetta su logcounta, si chiama proprio cosi la tabella?

Forse il problema è proprio questo... in caso contrario, sarebbe comoda la descrizione dell'errore :)
 
Ecco l'errore

Carissimo Luke,
grazie per il disturbo
l'errore è questo
Microsoft VBScript compilation error '800a0401'

Expected end of statement

/login.asp, line 33

UPDATE logcounta SET contatore = contatore + 1 WHERE username = " & variabile_username & "
-----------------^


Si il db l'ho chimato logconta
grazie
 
Allora... calma :)

Dici di aver chiamato la tabella (o il db???) "logconta", ma vedo che nell'UPDATE la chiami "logcounta" (con una "u" di troppo).

In secondo luogo, nel codice NON hai usato l'Execute, ma hai incollato nudo e crudo il codice che ti ho passato :hammer:

cn.Execute("UPDATE logcount SET contatore = contatore + 1 WHERE username = '" & variabile_username & "'")

Al posto di "cn" (cn.Execute...) metti il nome della Connection che hai dichiarato.
 
Ci provo, ma nn capisco

Abbi pazienza,
Oki, ho fatto come mi hai detto, ed hai ragione mi merito la martellata.
Purtroppo pero non riesco a farlo unzionare
il codice è:
MM_rsUser.Execute("UPDATE logconta SET contatore = contatore + 1 WHERE username = '" & variabile_username & "'")
_______________________________________________________
Ho provato a spostare la linea sopra appena dopo la conferma ma mi da l'eerore ch e manca l'oggetto.
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/Dati_auto.asp" -->
<%
Dim Rpas
Dim Rpas_numRows

Set Rpas = Server.CreateObject("ADODB.Recordset")
Rpas.ActiveConnection = MM_Dati_auto_STRING
Rpas.Source = "SELECT * FROM pasword"
Rpas.CursorType = 0
Rpas.CursorLocation = 2
Rpas.LockType = 1
Rpas.Open()

Rpas_numRows = 0

%>
<%
' *** Validate request to log in to this site.
MM_LoginAction = Request.ServerVariables("URL")
If Request.QueryString<>"" Then MM_LoginAction = MM_LoginAction + "?" + Server.HTMLEncode(Request.QueryString)
MM_valUsername=CStr(Request.Form("user"))
If MM_valUsername <> "" Then
MM_fldUserAuthorization=""
MM_redirectLoginSuccess="illi/autoxx.asp"
MM_redirectLoginFailed="Login_fallito.asp"
MM_flag="ADODB.Recordset"
set MM_rsUser = Server.CreateObject(MM_flag)
MM_rsUser.ActiveConnection = MM_Dati_auto_STRING
MM_rsUser.Source = "SELECT user, password"
If MM_fldUserAuthorization <> "" Then MM_rsUser.Source = MM_rsUser.Source & "," & MM_fldUserAuthorization
MM_rsUser.Source = MM_rsUser.Source & " FROM pasword WHERE user='" & Replace(MM_valUsername,"'","''") &"' AND password='" & Replace(Request.Form("password"),"'","''") & "'"
MM_rsUser.CursorType = 0
MM_rsUser.CursorLocation = 2
MM_rsUser.LockType = 3
MM_rsUser.Open
If Not MM_rsUser.EOF Or Not MM_rsUser.BOF Then
' username and password match - this is a valid user
Session("MM_Username") = MM_valUsername
If (MM_fldUserAuthorization <> "") Then
Session("MM_UserAuthorization") = CStr(MM_rsUser.Fields.Item(MM_fldUserAuthorization).Value)
Else
Session("MM_UserAuthorization") = ""
End If
if CStr(Request.QueryString("accessdenied")) <> "" And false Then
MM_redirectLoginSuccess = Request.QueryString("accessdenied")


End If
MM_rsUser.Close
Response.Redirect(MM_redirectLoginSuccess)
End If
MM_rsUser.Close
Response.Redirect(MM_redirectLoginFailed)

MM_rsUser.Execute("UPDATE logconta SET contatore = contatore + 1 WHERE username = '" & variabile_username & "'")
End If
______________________________________________


Tieni conto che come hai detto tu ho fatto un database con 3 campi
1 id (contatore)
2 user (testo)
3 conta (numero)

Se puoi aiutarmi, grazie
 
Scusa, ma... che intendi per "non capisco"?

Te lo chiedo perchè sono io che non capisco se non ti ho dato la dritta in modo chiaro, o se sei tu che manchi di un po di esperienza :)

A prescindere: cosa, esattamente, non hai compreso?
 
Non sono esperto

Carissimo Luke,
io le sono molto grato i suggerimenti che mi ha dato, si non sono esperto in asp, per questo motivo mi trovo in difficolta a fare determinate cose. Sono un appassionato e come tale faccio prove sul mio sito web. Quello che non riesco a capire è come mettere la stringa che mi ha gentilmente passato.
Mi ha detto che al posto di conn.Execute deve mettere il nome del Rs e fin li dovrei esserci ma non riesco a capire perchè non mi aggiorna il database.
Come le ho postato prima c'è tutto il codice, nelle variabili ho cambiato tutti i paramentri dal nome del campo USER, fino al nome della variabile, ma non riesco ad aggiornare il contatore.
Capisco di darle problemi, ma se può aiutarmi gli ne sarei grato .
a presto
 
Nessun errore, ma non aggiorna il db

Si, grazie luke
dunque l'errore non me lo da, funziona il login, ma non aggiorna il data base contatore
Io ho aggiunto questo codice

MM_rsUser.Execute("UPDATE logconta SET contatore = contatore + 1 WHERE username = '" & variabile_username & "'")

nella parte finale, e nelle fase precedenti, come mi avevi detto tu ho cerato dove funzionava,
ma non si aggiorna il codice.

Ho pensato che forse MM_rs User non era la connessione giusta, cosi ho provato con rpass (Rpas.ActiveConnection = MM_Dati_auto_STRING)
ma nn è funzionato
all'ora ho provato a modificare la variabile, ho pensato che la username deve prenderla da una variabile che passa dal login, quindi
'" & variabile_username & "'" ho messo MM_valUsername perchè (Session("MM_Username") = MM_valUsername)
quindi ho creduto che la sessione registrata della username fosse uguale alla variabile
ma no, non è giusto

QUeste prove sono per ragionamenti sicuamente sbagliati, ma almeno da provare a capire come funziona
spero di essermi spiegato bene
grazie
 
Prova con la variabile MM_Dati_auto_STRING.

In ogni caso nel file Dati_auto.asp nella cartella Connections, dovresti trovare la risposta, localizzando quale variabile viene settata come ADODB.Connection ed esegue, nel metodo Open, l'apertura appunto della stringa di connessione al database.

Alla fine, il tipo di dato del campo username della tabella logconta, è testo?

Vedo, inoltre (ieri avevo sonno, non ci ho fatto caso...), usi la variabile variabile_username per filtrare il campo username nella clausola WHERE della nostra brava UPDATE... esiste una variabile del genere?

Prova con Session("MM_Username"), quindi:

XXXXX.Execute("UPDATE logconta SET contatore = contatore + 1 WHERE username = '" & Session("MM_Username") & "'")

Fammi sapere!
 
Perdonami

Caro Luke, ti chiedo scusa ma non riesco più mi sforza di capire ma non riesco.
Il db si è testo per username e numerico per conta
ma non riesco a fare l'aggiornamento eppure mi sembra giusto
Dunque
MM_rsUser attiva la connessione a MM_Dati_connections
fin qui dovremmo essere giusti
la variabile di sessione è MM_USER = MM_Val USER
quindi se questi campi sono giusti
forse posiziono la stringa update in modo sbagliato
tu mi hai detto di metterla dopo il consenso giusto?
e credo di aver fatto giusto ma non aggiorna i campi
Ti chiedo scusa
ma non capisco

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/Dati_auto.asp" -->
<%
Dim Rpas
Dim Rpas_numRows

Set Rpas = Server.CreateObject("ADODB.Recordset")
Rpas.ActiveConnection = MM_Dati_auto_STRING
Rpas.Source = "SELECT * FROM pasword"
Rpas.CursorType = 0
Rpas.CursorLocation = 2
Rpas.LockType = 1
Rpas.Open()

Rpas_numRows = 0

%>
<%
' *** Validate request to log in to this site.
MM_LoginAction = Request.ServerVariables("URL")
If Request.QueryString<>"" Then MM_LoginAction = MM_LoginAction + "?" + Server.HTMLEncode(Request.QueryString)
MM_valUsername=CStr(Request.Form("user"))
If MM_valUsername <> "" Then
MM_fldUserAuthorization=""
MM_redirectLoginSuccess="illi/autoxx.asp"
MM_redirectLoginFailed="Login_fallito.asp"
MM_flag="ADODB.Recordset"
set MM_rsUser = Server.CreateObject(MM_flag)
MM_rsUser.ActiveConnection = MM_Dati_auto_STRING
MM_rsUser.Source = "SELECT user, password"
If MM_fldUserAuthorization <> "" Then MM_rsUser.Source = MM_rsUser.Source & "," & MM_fldUserAuthorization
MM_rsUser.Source = MM_rsUser.Source & " FROM pasword WHERE user='" & Replace(MM_valUsername,"'","''") &"' AND password='" & Replace(Request.Form("password"),"'","''") & "'"
MM_rsUser.CursorType = 0
MM_rsUser.CursorLocation = 2
MM_rsUser.LockType = 3
MM_rsUser.Open
If Not MM_rsUser.EOF Or Not MM_rsUser.BOF Then
' username and password match - this is a valid user
Session("MM_Username") = MM_valUsername
If (MM_fldUserAuthorization <> "") Then
Session("MM_UserAuthorization") = CStr(MM_rsUser.Fields.Item(MM_fldUserAuthorization ).Value)
Else
Session("MM_UserAuthorization") = ""
End If
if CStr(Request.QueryString("accessdenied")) <> "" And false Then
MM_redirectLoginSuccess = Request.QueryString("accessdenied")

End If
MM_rsUser.Close
Response.Redirect(MM_redirectLoginSuccess)
End If
MM_rsUser.Close
Response.Redirect(MM_redirectLoginFailed)
MM_rsUser.Execute("UPDATE logconta SET contatore = contatore + 1 WHERE username = '" & Session("MM_Username") & "'")
%>
perdonami
 
Innanzitutto non scusarti, è normale avere dei problemi all'inizio ;) solo che sono convinto che stai facendo un passo oltre la tua gamba, ed il casino di codice superfluo che il maledetto di DW butta fuori non aiuta di certo.

Devi capire qual'è il nome della connessione e di certo lo trovi nel file di inclusione che vedo richiami in tutte le pagine.

Trovalo ;)
 
Ci sono quasi, o forse

Oki, caro Luke
visto che non riesco a trovare la connessione ho pensato al detto de maom. non va alla montagna, è la montagna che va a ..
cosi me ne sono creata 1
e cosi ho postato il codice.
Per vedere se passavano i dati ho tolto la variabile ed ho messo il nome di un login, ad esempio pippo:

Il codice:
<%


Dim dbConn
set dbConn = Server.CreateObject("adodb.connection")
dbConn.open "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath ("\mdb-database\auto.mdb")
dbConn.Execute("UPDATE logconta SET contatore = contatore + 1 WHERE username = " pippo")
%>
cosi funziona
poi ho provato a mettere al posto di pippo la variabile

session, variabile_username ma niente non ci sono riuscito
ho provato anche con Request query form x estrarla direttamente dal area di inserimento, ma ninete
Help me grazie
 
ci sono riuscito in parte, funziona ma accetta anche il refresh

Caro luke, perdonami se ti appesantisco nelle domande, ma pian piano emerge qualcosa.
Dunque, ho pensato ad una cosa, siccome nella pagina che riceve il logout, riesco a far funzionare la session, ho spostato il codici in quell apagina
<%


Dim dbConn
set dbConn = Server.CreateObject("adodb.connection")
dbConn.open "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath ("\mdb-database\auto.mdb")
dbConn.Execute("UPDATE logconta SET contatore = contatore + 1 WHERE username = '" & session(MM_username)&' ")
%>
e di fatto finziona mi aggiorna i database tutto funziona,
ora però ho un'altro problema, se faccio il refresh della pagina lui continua a contare.
Cosi ti chiedo questo
Se un login lancia una serie di dati alla pagina che lo riceve, e questo è registrato nella session, :
1)posso chiudere la session in modo che al refresh della pagina non conti piu?
2) utilizzando la sesion è possibile fare apparire un altro dato (presente sulla stessa riga delle password? di access)
mi spiego meglioo, se in access ho:
campo id-login-pasword-nome utente
invece di fare apparire username (che sarebbe la login di acess) posso fare apparire nome utente?
Grazie
 

Discussioni simili