LOGIN EM VB6 COM MYSQL

NATH4N 28/04/2010 17:21:10
#340484
se seu usuario e root e vc definiu uma senha na conexao do mysql precisa colocar o usuario que e root e a senha:
ex

If vDB.State = adStateOpen Then vDB.Close

vDB.CursorLocation = adUseClient
vDB.Open [Ô]Driver={MySQL ODBC 3.51 Driver};[Ô] & _
[Ô]Server=[Ô] & sServer & [Ô];[Ô] & _
[Ô]Port=[Ô] & Porta & [Ô];[Ô] & _
[Ô]Database=[Ô] & bdFileName & [Ô];[Ô] & _
[Ô]User=[Ô] & sUser & [Ô];[Ô] & _
[Ô]Password=[Ô] & sSenha & [Ô];[Ô] & _
[Ô]Option=3;[Ô]
XXXANGELSXXX 29/04/2010 12:12:33
#340525
ai cumpadre.. vou mandar para vc.. a forma mais facil de fazer isso.

Sub btnOk_click
If txtUsuario.Text = Empty Then
MsgBox [Ô]Digite o nome do Usuário![Ô], vbOKOnly + vbInformation, [Ô]Aviso[Ô]
txtUsuario.SetFocus
Exit Sub
End If
If txtSenha.Text = Empty Then
MsgBox [Ô]Digite a Senha![Ô], vbOKOnly + vbInformation, [Ô]Aviso[Ô]
txtSenha.SetFocus
Exit Sub
End If
Set myRS = New ADODB.Recordset
myRS.Open [Ô]SELECT * FROM cadusuarios where usernome=[ô][Ô] & txtUsuario.Text & [Ô][ô] and usersenha =[ô][Ô] & txtSenha.Text & [Ô][ô][Ô], Conexao, adOpenStatic, adLockBatchOptimistic
If myRS.RecordCount = 0 Then
MsgBox [Ô]Usuário ou Senha Inválida![Ô], vbOKOnly + vbInformation, [Ô]Aviso[Ô]
txtUsuario.Text = [Ô][Ô]:txtSenha.Text = [Ô][Ô]:txtUsuario.SetFocus
myRS.Close

Exit Sub
Else
Unload Me
Load frmDesktop
frmDesktop.Show
End If
end sub
MOREIRA 29/04/2010 20:26:12
#340593
coloca isso em um modulo.. e pronto.. comece a usar sua boa criatividade...

[ô]Modúlo de conexão
Public Conexao As New ADODB.Connection
Public Caminho As String
Public Sql As String
[ô]Função para se conectar ao MySQL e retorna true se a conexão foi estabelecida
Public Function ConectaMySQL() As Boolean
On Error GoTo Err_Conexao
Conexao.Open [Ô]DRIVER={MySQL ODBC 5.1 Driver};Server=LocalHost;uid=root;pwd=SUASENHA;Database=SEUBANDODEDADOS[Ô]
ConectaMySQL = True
Exit Function
Err_Conexao:
ConectaMySQL = False
MsgBox Err.Description
End Function
[ô]Função Para Desconectar Corretamente do Banco
Public Function DesconectaMySQL()
If (Not Conexao Is Nothing) Then
If Conexao.State = 1 Then
Conexao.Close
End If
Set Conexao = Nothing
End If
End Function
Public Sub FecharRst()
If (Not Rst Is Nothing) Then
If Rst.State = 1 Then
Rst.Close
End If
Set Rst = Nothing
End If
End Sub
Public Sub Main()
If ConectaMySQL = False Then
MsgBox ([Ô]Ocorreu um erro ao tentar efetuar uma conexão com o servidor de banco de dados. O programa será finalizado !![Ô]), vbCritical, [Ô]Erro na conexão !![Ô]
End
Else

Frm_Login.Show ---->>>> ACHAMA O FRM_lOGIN


End If
End Sub
Public Function Centraliza(frm As Form) As String
[ô]Centralizando os forms
If frm.MDIChild = True Then
frm.Move (Screen.Width - frm.Width) / 2, (Screen.Height - frm.Height) / 2 - 1000
frm.KeyPreview = True
Else
frm.Move (Screen.Width - frm.Width) / 2, (Screen.Height - frm.Height) / 2
frm.KeyPreview = True
End If
End Function
Public Sub Botao(Estado As Byte)
Select Case Estado
Case 1 [ô]Inicial
Screen.ActiveForm.CmdIncluir.Enabled = True
Screen.ActiveForm.CmdAlterar.Enabled = False
Screen.ActiveForm.CmdGravar.Enabled = False
[ô]Screen.ActiveForm.CmdCancelar.Enabled = False
[ô][ô]Screen.ActiveForm.CmdExc.Enabled = False
[ô][ô]Screen.ActiveForm.CmdPro.Enabled = True
[ô][ô]Screen.ActiveForm.CmdAnt.Enabled = True
[ô][ô]Screen.ActiveForm.Fra.Enabled = False
Case 2 [ô]Alteração/Inclusão
Screen.ActiveForm.CmdIncluir.Enabled = False
Screen.ActiveForm.CmdAlterar.Enabled = False
Screen.ActiveForm.CmdGravar.Enabled = True
[ô]Screen.ActiveForm.CmdCancelar.Enabled = True
[ô][ô]Screen.ActiveForm.CmdExc.Enabled = False
[ô][ô]Screen.ActiveForm.CmdPro.Enabled = False
[ô][ô]Screen.ActiveForm.CmdAnt.Enabled = False
[ô][ô]Screen.ActiveForm.Fra.Enabled = True
Case 3 [ô]Navegação
Screen.ActiveForm.CmdIncluir.Enabled = True
Screen.ActiveForm.CmdAlterar.Enabled = True
Screen.ActiveForm.CmdGravar.Enabled = False
[ô]Screen.ActiveForm.CmdCancelar.Enabled = True
[ô][ô]Screen.ActiveForm.CmdExc.Enabled = True
[ô][ô]Screen.ActiveForm.CmdPro.Enabled = True
[ô][ô]Screen.ActiveForm.CmdAnt.Enabled = True
[ô][ô]Screen.ActiveForm.Fra.Enabled = False
End Select
End Sub
TECLA 29/04/2010 23:06:13
#340602
Citação:

:
isso eu fasso rapido so preciso saber onde ponho o codigo de conexao do vb6 como mysql se poe em alguma module ou na form e como interagir com os campos a conexao...



Crie um procedimento público em um MODULO com a rotina de CONEXAO (e DESCONEXAO).
CEELSO 30/04/2010 14:54:10
#340651
Sub btnOk_click
If txtUsuario.Text = Empty Then
MsgBox [Ô]Digite o nome do Usuário![Ô], vbOKOnly + vbInformation, [Ô]Aviso[Ô]
txtUsuario.SetFocus
Exit Sub
End If
If txtSenha.Text = Empty Then
MsgBox [Ô]Digite a Senha![Ô], vbOKOnly + vbInformation, [Ô]Aviso[Ô]
txtSenha.SetFocus
Exit Sub
End If
Set myRS = New ADODB.Recordset
myRS.Open [Ô]SELECT * FROM cadusuarios where usernome=[ô][Ô] & txtUsuario.Text & [Ô][ô] and usersenha =[ô][Ô] & txtSenha.Text & [Ô][ô][Ô], Conexao, adOpenStatic, adLockBatchOptimistic
If myRS.RecordCount = 0 Then
MsgBox [Ô]Usuário ou Senha Inválida![Ô], vbOKOnly + vbInformation, [Ô]Aviso[Ô]
txtUsuario.Text = [Ô][Ô]:txtSenha.Text = [Ô][Ô]:txtUsuario.SetFocus
myRS.Close

Exit Sub
Else
Unload Me
Load frmDesktop
frmDesktop.Show
End If
end sub

muito bem diacordo com o codigo do XXXANGELSXXX parece ser o que preciso mais ai teria que criar uma class chamada myRS correto? e eu nao entendi o formato da database dela mais se nao me engano a database teria uma tabela chamada usernome e usersenha né? .-.

edit:
Tenho o form de login que se chama hLOG e o form do servidor que é o form seguinte chamado hUI que será aberto caso o login e senha forem corretos... no hLOG tenho este codigo:

Private Sub Form_Load()

End Sub

Private Sub Image1_Click()

End Sub

Private Sub Label4_Click()
If txtUsuario.Text = Empty Then
MsgBox [Ô]Digite o nome do Usuário![Ô], vbOKOnly + vbInformation, [Ô]Aviso[Ô]
txtUsuario.SetFocus
Exit Sub
End If
If txtSenha.Text = Empty Then
MsgBox [Ô]Digite a Senha![Ô], vbOKOnly + vbInformation, [Ô]Aviso[Ô]
txtSenha.SetFocus
Exit Sub
End If
Set myRS = New ADODB.Recordset
myRS.Open [Ô]SELECT * FROM cadusuarios where usernome=[ô][Ô] & txtUsuario.Text & [Ô][ô] and usersenha =[ô][Ô] & txtSenha.Text & [Ô][ô][Ô], Conexao, adOpenStatic, adLockBatchOptimistic
If myRS.RecordCount = 0 Then
MsgBox [Ô]Usuário ou Senha Inválida![Ô], vbOKOnly + vbInformation, [Ô]Aviso[Ô]
txtUsuario.Text = [Ô][Ô]: txtSenha.Text = [Ô][Ô]: txtUsuario.SetFocus
myRS.Close

Exit Sub
Else
Unload Me
Load hUI
hUI.Show
End If
End Sub

mais quando vo compila ele detecta erro de compilaçao [compilation error] em: Set myRS = New ADODB.Recordset como na imagem abaixo:




XXXANGELSXXX 30/04/2010 21:35:16
#340694
isso amigo, saca so.. myrs é um recordset que vc tem quer referenciar no inicio da funcao.. assim

set myrs = new adodb.recordset

e veja bem.. isso e para mysql, a tabela se chama

CADUSUARIOS nesse caso
o campo onde guarda o usuario do cara .. é USERNOME
e o campo que guarda a senha é USERSENHA
para vc entender um pouco melhor ai vai o codigo ..

saca so.. o que esta dando expected variavel ai.. era bom vc depurar.. para ver qual linha , pelo jeito que vc ta fazendo, me parece que é em cima do CONEXAO apos a sintaxe que filtra o usuario e a senha do banco, manda ai seu modulo de conexao com o banco para entender melhor, ou seja, se vc criou a string de conexao colocando la outro nome por exemplo.. para abrir o banco, exemplo CON, e nisso que esta o erro.. ai ficaria assim mais ou menos..


myRS.Open [Ô]SELECT * FROM cadusuarios where usernome=[ô][Ô] & txtUsuario.Text & [Ô][ô] and usersenha =[ô][Ô] & txtSenha.Text & [Ô][ô][Ô], CNN, adOpenStatic, adLockBatchOptimist

Qualquer coisa me add no msn que te ajudo.

CEELSO 05/05/2010 18:56:33
#341048
muito obrigado amigos da vb mania meu codigo esta finalmente pronto graças a todos voces \o/
TECLA 05/05/2010 20:37:39
#341054
Seguindo as regras do site, favor ENCERRAR o topico (e abrir um outro, caso haja necessidade).
XXXANGELSXXX 06/05/2010 11:38:18
#341100
Encerra o topico, e pontue quem te ajudou.. ok?
Página 2 de 2 [19 registro(s)]
Tópico encerrado , respostas não são mais permitidas