Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom galera há algum tempo atrás um amigo aqui do fórum me ajudou, e consegui resolver, porém agora o código não está mais funcionando! Só dá login e senha inválidos, não loga! Alguém poderia me ajudar?
Ai está o código:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
'PARTE DA CONEXÃO COM O BANCO DE DADOS
Dim CONEXAO As MySqlConnection = New MySqlConnection("SERVER=localhost;user id=root;password=;database=vaadministration")
Dim COMMAND As MySqlCommand = New MySqlCommand("SELECT * FROM users WHERE login = '" & TextBoxLogin.Text & "' AND senha = '" & TextBoxSenha.Text & "'", CONEXAO)
Dim ADAPTADOR As MySqlDataAdapter = New MySqlDataAdapter(COMMAND)
Dim DADOS As New DataTable()
Try
If TextBoxLogin.Text = "" And TextBoxSenha.Text = "" Then
MsgBox("Campos Login e Senha não podem ficar em brancos!")
End If
'SENHA PARA POSSÍVEIS MANUTENÇÕES QUE VENHA HAVER COM RESPEITO AO PROGRAMA (CASO PESSOA ESQUEÇA A SENHA) OBS.: ALTERAR SENHA AO FINAL DO PROJETO!!!!!!
If TextBoxLogin.Text = "Admin" And TextBoxSenha.Text = "admin" Then
CFP.Show()
Me.Hide()
MsgBox("LOGADO COMO ADMINISTRADOR DO PROGRAMA!")
End If
CONEXAO.Open()
If DADOS.Rows.Count > 0 Then
'TEM USUÁRIO REGISTRADO
CFP.Show()
Me.Hide()
Else
'NÃO TEM USUÁRIO REGISTRADO
MsgBox("INVALID LOGIN OR PASSWORD RETRY")
End If
CONEXAO.Close()
Catch erro As Exception
MsgBox(erro.Message)
End Try
End Sub
O que há de errado com o código pessoal???
Não adiantou não mano! :upset: Continua dando o mesmo erro! E existe 2 usuários na tabela!
Use um datareader ao invés de um datatable.
Use como:
dr = comando.executeReader
If dr.hasrows Then
//há usuários
>
Use um datareader ao invés de um datatable.
Use como:
dr = comando.executeReader
If dr.hasrows Then
//há usuários
Amigo me desculpe, mas sou novato em VB.NET! Poderia me mostrar como ficaria o código? Sou leigo no assunto! :upset:
Dim CONEXAO As MySqlConnection = New MySqlConnection("SERVER=localhost;user id=root;password=;database=vaadministration")
Dim COMMAND As MySqlCommand = New MySqlCommand("SELECT * FROM users WHERE login = '" & TextBoxLogin.Text & "' AND senha = '" & TextBoxSenha.Text & "'", CONEXAO)
Dim dr As SqlDataReader
CONEXAO.Open()
dr = COMMAND.ExecuteReader()
dr.read()
If dr.HasRows Then
//existem usuários
Else
//não existem usuários
End If
CONEXAO.Close()
>
Dim CONEXAO As MySqlConnection = New MySqlConnection("SERVER=localhost;user id=root;password=;database=vaadministration")
Dim COMMAND As MySqlCommand = New MySqlCommand("SELECT * FROM users WHERE login = '" & TextBoxLogin.Text & "' AND senha = '" & TextBoxSenha.Text & "'", CONEXAO)
Dim dr As SqlDataReader
CONEXAO.Open()
dr = COMMAND.ExecuteReader()
dr.read()
If dr.HasRows Then
//existem usuários
Else
//não existem usuários
End If
CONEXAO.Close()
Tentei aqui amigo mas ai pediu pra importar:
Imports MySql.Data.MySqlClient
Imports System.Data.SqlClient
'SÓ QUE ESSES DOIS ACIMA NÃO FUNCIONARA JUNTOS
ai não deu certo deu erro ai: dr = COMMAND.ExecuteReader()
:upset: O que será que foi?
Olha da uma olhada no que eu uso:
Imports MySql.Data.MySqlClient
Imports System.Data
Imports System.IO
Protected Sub btn_login_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn_login.Click
Dim myConnString As New MySqlConnection
Dim mySelectQuery As String
Dim usuario As String = inputEmail.Value
Dim senha As String = inputPassword.value
Try
myConnString = New MySqlConnection(System.Configuration.ConfigurationManager.AppSettings("strConexaoDB").ToString)
mySelectQuery = "Select * From usuario_usuario where usuario_usuario='" & usuario & "' and usuario_senha='" & senha & "'"
Dim myCommand As New MySqlCommand(mySelectQuery, myConnString)
myConnString.Open()
Dim myReader As MySqlDataReader
myReader = myCommand.ExecuteReader()
If myReader.HasRows Then
myReader.Read()
Session("logado") = myReader.Item("usuario_id").ToString
Else
lbl_erro.Text = " <div class=""alert alert-error""> <button type=""button"" class=""close"" data-dismiss=""alert"">×</button> <h4>Erro!!!</h4> Usuário ou Senha inválidos. Cod: 32 </div>"
Session("logado") = Nothing
End If
myReader.Close()
myConnString.Close()
Catch ex As Exception
Dim erro As String = ex.Message.ToString
lbl_erro.Text = erro
End Try
End Sub
>
Olha da uma olhada no que eu uso:
Imports MySql.Data.MySqlClient
Imports System.Data
Imports System.IO
Protected Sub btn_login_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn_login.Click
Dim myConnString As New MySqlConnection
Dim mySelectQuery As String
Dim usuario As String = inputEmail.Value
Dim senha As String = inputPassword.value
Try
myConnString = New MySqlConnection(System.Configuration.ConfigurationManager.AppSettings("strConexaoDB").ToString)
mySelectQuery = "Select * From usuario_usuario where usuario_usuario='" & usuario & "' and usuario_senha='" & senha & "'"
Dim myCommand As New MySqlCommand(mySelectQuery, myConnString)
myConnString.Open()
Dim myReader As MySqlDataReader
myReader = myCommand.ExecuteReader()
If myReader.HasRows Then
myReader.Read()
Session("logado") = myReader.Item("usuario_id").ToString
Else
lbl_erro.Text = " <div class=""alert alert-error""> <button type=""button"" class=""close"" data-dismiss=""alert"">×</button> <h4>Erro!!!</h4> Usuário ou Senha inválidos. Cod: 32 </div>"
Session("logado") = Nothing
End If
myReader.Close()
myConnString.Close()
Catch ex As Exception
Dim erro As String = ex.Message.ToString
lbl_erro.Text = erro
End Try
End Sub
Tente aqui amigo não funcionou mesmo baseando pelo seu! :upset: Continua dar senha e login inválidos!
Desculpe Elnata, eu não tinha visto que era MySQL, basta você trocar tudo que está com Sql para MySql:
SqlDataReader -> MySqlDataReader
>
Desculpe Elnata, eu não tinha visto que era MySQL, basta você trocar tudo que está com Sql para MySql:
SqlDataReader -> MySqlDataReader
Opa mano sem problemas! Problemas resolvido com sucesso! Obrigado! Vc é fera brow! :D
Não sei se vai adiantar, mas você pode tentar:
If DADOS.Rows.Count == 0 Then
'NÃO TEM USUÁRIO REGISTRADO
MsgBox("INVALID LOGIN OR PASSWORD RETRY")
Else
'TEM USUÁRIO REGISTRADO
CFP.Show()
Me.Hide()
End If
E veja se realmente tem dados na tabela users...