Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

vini_wmcgroup

[Resolvido] Criando tela de login

Recommended Posts

Boa tarde pessoas.

 

Gostaria de saber como criar uma tela de login onde o usuario deve digitar seu codigo e sua senha de uma tabela de um bd do access e ele confirme com uma msgbox se deu certo o logon. Pois não entendo muito como fazer a sintaxe exata do código de verificação...

Aguardo comentários =D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá vini_wmcgroup, primeiramente, seja bem vindo ao fórum.

Caso não tenha lido nossas regras, e o deseje fazer para melhor se familiarizar, clique aqui

 

Criar uma tela de login é relativamente fácil. Mas preciso saber o que você já sabe fazer.

Sabe trabalhar com banco de dados já? Se sim e se já montou uma conexão em seu projeto, que tipo de conexão está usando (ADO ou DAO e se via código ou objeto)?

 

Mas basicamente, monte um form com duas caixas de texto, uma para o nome e outra para senha e um botão.

Ao clicar nesse botão, deverá fazer uma consulta em seu banco comparando se existe um usuario com o nome e a senha informados. Se o retorno da sua consulta não for 0, é porque estão corretos, caso contrário exiba uma mensagem de alerta.

 

Tendeste?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Criar uma tela de login é relativamente fácil. Mas preciso saber o que você já sabe fazer.

Sabe trabalhar com banco de dados já? Se sim e se já montou uma conexão em seu projeto, que tipo de conexão está usando (ADO ou DAO e se via código ou objeto)?

 

Mas basicamente, monte um form com duas caixas de texto, uma para o nome e outra para senha e um botão.

Ao clicar nesse botão, deverá fazer uma consulta em seu banco comparando se existe um usuario com o nome e a senha informados. Se o retorno da sua consulta não for 0, é porque estão corretos, caso contrário exiba uma mensagem de alerta.

 

Tendeste?

 

Bom até aí eu entendo mas relmente nao entendo esses lances de DAO ou ADO...

 

o código que estou usando está assim:

no module:


Option Explicit
Public tbl As Recordset
Public bd As Database
no codigo do form do login:


Private Sub Form_Load()
Set bd = OpenDatabase("C:\Documents and Settings\informatica2\Desktop\project vb\chamados.mdb")
End Sub
Private Sub Command2_Click()
End
End Sub

Private Sub Cmd1_Click()
	Dim ssql As String
	ssql = "select * from usuarios where usuario=" & Val(Text1.Text)
	Set tbl = bd.OpenRecordset(ssql)
    	If tbl.RecordCount = 0 Then
    	MsgBox "Usuário inexistente", vbInformation + vbOKOnly, "Banco de Dados"
    	Text1.SetFocus
	Else
   	Unload Me
   	Form4.Show
    	End If
	tbl.Close
End Sub

ai quando executo o programa ele da um erro assim:

"Run-Time error '3464':

Tipo de dados incompativel na expressão de criterio."

Compartilhar este post


Link para o post
Compartilhar em outros sites

concatene plicas no conteudo da query, e se quiser facilitar o seu trabalho use um DataControl

 

Caraaaa do céu, você está falando em grego pra mim...

 

Vini, qual o conteúdo da text1? O campo usuario é numérico ou alfanumérico? Qual linha o erro aponta?

 

 

 

 

Giovanny, o que é plicas??

 

 

text1 = alfanumerico

text1 é o campo de digitação do nome do usuario.

 

nessa linha ocorre o erro:

set tbl = bd.openrecordset(ssql)

o erro é : tipo de dados incompativel na expressao de criterio, error "3464"

nesse caso só estou colocando o usuario para verificar se ele existe, queria colocar tambem uma senha para o usuario...assim aumenta o nivel de segurança.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, com suas respostas minhas dúvidas foram sanadas.

Primerio, val transforma uma string em número, então você pode tirar aquele val dali.

Segundo, se você quer o nome o usuário, é porque o campo usuario também é alfanumerico, e espera uma string. Sempre que passar strings para o banco de dados, precisa estar entre apostrófes ('').

 

Esse linha deve ficar assim:

ssql = "select * from usuarios where usuario= '" & Text1.Text & "'"

Tenta e veja se deu certo.

 

 

Ah, e não use o DataControl não. Como foi dito, vai faciliar seu trabalho mesmo, mas do jeito que está fazendo consegue uma flexibilidade melhor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tentei fazer um "and" e colocar uma verificação de mais um campo, (o campo da senha do usuario) e ele só verifica o campo do usuario...

como resolver isto?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como fez?

 

 

Para falar a verdade ja consegui arrumar aqui sozinho mesmo, obrigado a todos pela atenção prestada =D

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.