Tutorial Sistema de login visual .net 2008 mysql”

En el siguiente tutorial veremos realizar un sistema de ingreso con contraseña (login system), usando un base de datos para guardar nuestro usuarios, tabien tendremos la opción obtener el estatus, osea administrador , usuario o invitado , para activar o desactivar opciones según sea el caso. en tanto les pongo el codigo del boto aceptar en el formulario ingreso.

lo primero que tenemos que tener es instala nuestra base de datos , en este caso usare la base de datos de mi servidor web local.
mediante el administrado MYsql , se ha creado una nueva base de datos llamada sistema:
luego a esta se le ha añadido un tabla usuarios con 6 campos.

Imports System.Data
'importamos los nombres
Imports MySql.Data.MySqlClient
Public Class ingresopass
    Private veces As Integer = 0
    Private Const NumeroIntentos As Integer = 3

    Private Sub aceptar_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles aceptar.Click
        If Me.PasswordTextBox.Text <> "" And Me.UsernameTextBox.Text <> "" Then
            'para este tipo de conexcción se ha isntalado un plugin mysql conection
            Dim bdcn As New MySqlConnection(mysqlcn)
            Dim estatus As Integer
            ' Permitir varios intentos
            veces = veces + 1
            'Comenzamos una transacción
            Try
                bdcn.Open()
                ' Haciendo el string para el queri evitamos la inyección de código reemplazando las comillas simples
                ' por otro carácter
                Dim sql As String = "Select estatus From usuarios Where " & _
                " clave = '" & Trim(Replace(Me.PasswordTextBox.Text, "'", "x")) & _
                "' And usuario = '" & Trim(Replace(Me.UsernameTextBox.Text, "'", "x")) & "'"

                'cuandro de mensaje de prueba eliminar
                MsgBox(sql)

                Dim query = New MySqlCommand(sql)
                query.Connection = bdcn
                Dim x = query.ExecuteScalar()

                'carga el resultado: si se encontro concidencia de usuario y pasword
                estatus = CInt(x.ToString)
                'Cargamos valor a la variable estatus para utilizarla en los dmas contenedores
                estatusglobal = estatus
            Catch ex As Exception
                'mostramos el error
                If Err.Number = 91 Then

                    MessageBox.Show("ha ingresado datos incorrectos o el usuario no esta registrado")
                Else
                    MessageBox.Show("error " & Err.Number.ToString & vbCrLf & ex.Message)
                End If
            Finally
                'cerramos la conexion solo si esta abierta
                If (bdcn.State And ConnectionState.Open) <> 0 Then
                    bdcn.Close()
                End If
            End Try

            If estatus = 1 Then
                Me.Hide()
                panel.Show()

            ElseIf estatus = 2 Then
                'contenedor.AdministarToolStripMenuItem.Enabled = False
                Me.Hide()
                panel.Show()
            ElseIf estatus = 3 Then
                'contenedor.AdministarToolStripMenuItem.Enabled = False
                Me.Hide()
                panel.Show()

            Else
                If veces < NumeroIntentos Then
                    Label1.Text = "Quedan " & (NumeroIntentos - veces) & " intentos"
                    If (bdcn.State And ConnectionState.Open) <> 0 Then
                        Dim dos As String = "2"
                        bdcn.Close()
                    End If
                    Exit Sub
                End If
                Me.DialogResult = Windows.Forms.DialogResult.No
            End If

        Else
            MessageBox.Show("Ingresa tus datos completos", "Faltan Datos", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
            UsernameTextBox.Focus()

        End If
    End Sub

    Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cancel.Click
        Close()
    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        Me.Hide()
        panel.Show()

    End Sub

End Class

Escrito por: admin

Hola soy Pedro Herrera soy diseñador gráfico , desarrollador Web y editor de Video. También soy un Blogger regular, Usted puede seguirme en Twitter aquí. También puede ver mi portafolio AQUÍ.


Comparte Este Artículo Con Tu Amigos

¡Forme parte de la Comunidad !


Suscribase Via RSS o Sígame en TWITTER
Sigueme en Twitter suscribete rss

Puedes seguir cualquier respuesta a esta entrada mediante el canal RSS 2.0. Puedes dejar un comentario o enviar un trackback desde tu propio sitio.

 
  • waldo dice:

    estimado, muy bueno el ejemplo, pero me gustaria ver los campos de la tabla sino fuera mucha la molestia de poder subir o explicar mejor… agradecido,

    saludos de chile

  • admin dice:

    Hola Waldo. gracias por visitar la web.
    los campos son los siguientes

    CREATE TABLE `usuarios` (
      `id` int(2) NOT NULL auto_increment,
      `nombre` varchar(30) NOT NULL,
      `cargo` varchar(30) NOT NULL,
      `estatus` varchar(2) NOT NULL,
      `usuario` varchar(30) NOT NULL,
      `clave` varchar(30) NOT NULL,
      PRIMARY KEY  (`id`)
    )

    El código es para que te des una idea, tienes que adaptarlo a tus necesidades. si deseas conversar acerca de ello , puede hacerlo en el foro aquí: Tutorial Sistema de login visual .net 2008 mysql

  • la dice:

    hola , es un ejemplo magnifico para mi trabajo de la escuel,
    pero no entiendo para q es el Dim bdcn As New MySqlConnection(mysqlcn).
    y me marca error en mysqlcn dice q no se a declarado

  • admin dice:

    Gracias por leer

    En este caso te marca erro por que no instalaste el plugin mysql conector.

    este es para que desde .net puedas conectarte con mysql

    aquí tienes para la descarga:

    http://www.mysql.com/products/connector/

    si tienes alguna duda , aquí estoy. y no paro hasta que te corra bien.

  • Jota Aragon dice:

    Hola, me parece muy interesante su tutorial; no he podido encontrar un login control con los 2 botones. Soy muy malo para poder hacer arrastrando los labels, textbox y botones al formulario (me quedan desordenados y no me gusta), si hay alguna manera que queden centrados usando código asp html, le agradecería me lo regalara. Gracias.

  • kangri dice:

    brother tu tuto me esta siendo de ayuda, solo tengo un problema, en la siguiente parte:

    Dim x = query.ExecuteScalar
    status = CInt(x.ToString)
    ‘statusglobal = status

    me pone error 13
    la conversion de la cadena “cadena” en el tipo integer no es valida. Dame una pista de pork ando mal. Gracias de antemano

  • kangri dice:

    Pd. stoy utilizando Visual Studio 2005

  • Serch dice:

    Hola que tal, voy iniciando en esto , es q tengo que programar una handhead con visual y tengo muchas dudas, y vi tu pág. , aun estas activo por aquí? Para ver si me puedes apoyar
    Saludos

  • admin dice:

    Por ahora deje el visual .net, lamento no poder ayudarte.

 
 

Deja un comentario


 

Powered by WordPress ¬ design by ozoneekiz.net
35 procesos generados en 1,036 segundos.

Ir arriba