LOGIN COM ACUMULADOR

AYRES 14/09/2005 18:16:19
#104191
galera tem tenho u progrma com login e gostaria fazer um acompanhamento de quantas vezes o ususio logou.
alguem tem um fonte desse tipo?
USUARIO.EXCLUIDOS 14/09/2005 18:21:02
#104193
Amigo Ayres....
Crie um campo numérico no cadastro de clientes, para acumular os logins.
Depois, onde você faz a verificação do Login, no caso de ser
verdadeira, soma o campo mais um.

Espero ter ajudado.....
USUARIO.EXCLUIDOS 14/09/2005 18:24:39
#104194
Tenho um aplkicado que grava por IP, não sei se ajuda.

Mais isso não é comlicado de fazer, segue o codigo.

Crie uma tabela com os seguintes campos :

TAB_CONTROLE
Usuario text
Qtd_login integer
dat_ultimo_acesso date

crie as variaveis :

public rs as recordset
public db as database

- Validar Usuario/Login
se validação estiver ok
sqlaux = "SELECT * FROM TAB_CONTROLE WHERE USUARIO='" & txtUsuario.text & "'"
'
' o db já deve estar setado.
'
set rs = db.openrecordset(sqlaux)
if rs.eof then
rs.addNew
rs!USUARIO = TXTUSUARIO.TEXT
rs!qtd_login = 1
rs!dat_ultimo_acesso = date
rs.update
else
rs.edit
rs!qtd_login = rs!qtd_login + 1
rs!dat_ultimo_acesso = date
rs.update
end if

rs.close


USUARIO.EXCLUIDOS 14/09/2005 18:45:17
#104198
Resposta escolhida
Sem complicações... é um login como qualquer outro, apenas adicione na tabela onde ficam as informações do usuário um campo Numérico chamado 'Acessos'
A lógica é, cada vez que o usuário acessar o form de login e a senha dele estiver correta entre na tabela e atualize o n.º de acessos, é como um contador pessoal e automático...
(Veja este exemplo bobo)
--------------------------------------------------------------------------------------------------
If Senha = txtsenha and Usuario = txtusuario then
'Se a senha for correta

Dim Cnn as New Adodb.Connection
Dim Rst as New Adodb.Recordset
Cnn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\banco.mdb;"
Set Rst.ActiveConnection = Cnn
sql = "UPDATE Login SET Login.Acessos = [Acessos]+1
WHERE (((Login.Nome)='" & txtusuario & "'));"

Rst.open sql, Cnn, adOpenDynamic, adLockOptimistic
Set rst = Nothing
Cnn.Close
Set cnn = Nothing

else
'Se não for
Msgbox "Senha inválida"
End if
--------------------------------------------------------------------------------------------------

Como disse é apenas um lógica, para você ter uma idéia do que fazer, e lembre-se nada de abrir recordset como KeySet USE e ABUSE da INSTRUÇÃO SQL 'UPDATE' é bem mais rápido e não ativa as travas do BD.
Até breve...

AYRES 15/09/2005 11:28:49
#104348
galera tentei adpatar o codigo mas tem erro ainda alguem pode me ajudar

Private Sub Command1_Click()

Dim CONN As Adodb.Connection
Dim rss As Adodb.Recordset
Set CONN = New Adodb.Connection
Set rss = New Adodb.Recordset
CONN.Open ("db1")

Dim consulta As String
Dim sql As String

consulta = "SELECT * FROM Senhas WHERE Nome='" & Text1.Text & "' AND Senha='" & Text2.Text & "'"

rss.Open consulta, CONN, 1, 2

If rss.EOF Then
MsgBox "Usuário / Senha inválida", vbCritical, "Acesso Negado"
Exit Sub

Else
user = Text1.Text

sql = "UPDATE Login SET db1.contador = [contador]+1 WHERE (((db1.Nome)='" & Text1.Text & "'));"

Set rss = Nothing
CONN.Close
Set CONN = Nothing

Unload Me
main.Show
End If

End Sub
USUARIO.EXCLUIDOS 15/09/2005 11:55:44
#104355
Private Sub Command1_Click()

Dim CONN As Adodb.Connection
Dim rss As Adodb.Recordset
Set CONN = New Adodb.Connection
Set rss = New Adodb.Recordset
CONN.Open ("db1")

Dim consulta As String
Dim sql As String

consulta = "SELECT * FROM Senhas WHERE Nome='" & Text1.Text & "' AND Senha='" & Text2.Text & "'"

rss.Open consulta, CONN, 1, 2

If rss.EOF Then
MsgBox "Usuário / Senha inválida", vbCritical, "Acesso Negado"
Exit Sub

Else
user = Text1.Text
CONN.execute "UPDATE Login SET db1.contador = [contador]+1 WHERE (((db1.Nome)='" & Text1.Text & "'));"

Set rss = Nothing
CONN.Close
Set CONN = Nothing

Unload Me
main.Show
End If

End Sub
LIONHEART 15/09/2005 13:09:08
#104372
amigo, é só vc fazer um contador na tabela e somar 1 ou então gravar num arquivo Ini...
USUARIO.EXCLUIDOS 15/09/2005 13:13:12
#104374
Tente ser o mais detalhado possível...
Por exemplo... qual foi o erro?
AYRES 15/09/2005 14:11:17
#104401
apresnta


run time erro '-2147217904
parametros insuficientes. eram esperados 2

e qd vou debugar erro esta na linha CONN.Execute "UPDATE .....

Private Sub Command1_Click()

Dim CONN As Adodb.Connection
Dim rss As Adodb.Recordset
Set CONN = New Adodb.Connection
Set rss = New Adodb.Recordset
CONN.Open ("db1")

Dim consulta As String
Dim sql As String

consulta = "SELECT * FROM Senhas WHERE Nome='" & Text1.Text & "' AND Senha='" & Text2.Text & "'"

rss.Open consulta, CONN, 1, 2

If rss.EOF Then
MsgBox "Usuário / Senha inválida", vbCritical, "Acesso Negado"
Exit Sub

Else
user = Text1.Text
CONN.Execute "UPDATE Senhas SET Senhas.contador = [contador]+1 WHERE (((Senhas.Nome)='" & Text1.Text & "'));"

Set rss = Nothing
CONN.Close
Set CONN = Nothing

Unload Me
main.Show
End If

End Sub

Tópico encerrado , respostas não são mais permitidas