Como validar usuarios segun tipo??

Iniciado por byway, 15 Abril 2009, 00:56 AM

0 Miembros y 1 Visitante están viendo este tema.

byway

lo que tengo es lo siguiente una tabla con 3 campos:

Tipo , Usuario , Clave

donde Tipo es el indicador si es un Administrador o Usuario simple. esto para darle algunos privilegios ... lo que hize es algo simple:

Código (vb) [Seleccionar]
Dim cn As New ADODB.Connection
Dim Rst As New Recordset
Dim i As Integer
Dim ClaveCorrecta As Boolean

Private Sub Form_Load()
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "data.mdb"
cn.Open
End Sub

Private Sub Button1_Click()

If TxtUsuario.Text <> Empty And TxtClave.Text <> Empty Then
Rst.Open "SELECT Usuario,Clave FROM Usuarios", cn, adOpenStatic, adLockPessimistic, adAsyncFetch
      If Rst.RecordCount Then
            For i = 1 To Rst.RecordCount
           
               If StrComp(Rst(0).Value, TxtUsuario) = 0 Then
                   If StrComp(Rst(1).Value, TxtClave) = 0 Then
                       ClaveCorrecta = True
                       Exit For
                    End If
                End If
           
            Rst.MoveNext
           
            Next i
        End If
     
        If ClaveCorrecta Then
            Unload Me
            Principal.Show
        Else
            MsgBox "Ha escrito incorrectamente el nombre de usuario o la clave",            vbExclamation, "Atención"
            Rst.Close
            Set Rst = Nothing
        End If
    Else
        MsgBox "Debe escribir en nombre de usuario y la clave", vbExclamation, "Atención"
    End If

End Sub


como es multiusuario... solo habia hecho esto pero sin tener en cuenta lo de tipo, y toy dandole vueltas para poder manejar todo eso... y poder mostrarlo en una etiketa algo asi :

Código (vb) [Seleccionar]
Principal.Tipo.Caption 

Alguna sugerencia de como lograrlo.

Saludos.






byway

bueno le di una solucion rapida pero no me gusta.

del codigo anterior: modifique ..

Código (vb) [Seleccionar]
Rst.Open "SELECT * FROM Usuarios", cn, adOpenStatic, adLockPessimistic, adAsyncFetch

Código (vb) [Seleccionar]
For i = 1 To Rst.RecordCount
  If StrComp(Rst(0).Value, Combo1) = 0 Then
               If StrComp(Rst(1).Value, TxtUsuario) = 0 Then
                   If StrComp(Rst(2).Value, TxtClave) = 0 Then
                       ClaveCorrecta = True
                       Tipousuario = Combo1
                       Usuario = TxtUsuario
                       Exit For
                    End If
                End If
  End if
Rst.MoveNext

Next i




le adicione un combo con la opcion de escoger Administrador o Usuario y asi este tambien lo toma para validar y los muestro en el form principal:

Código (vb) [Seleccionar]
Principal.Tipo.Caption = TipoUsuario
Principal.Usuario.Caption = Usuario


y como veran es jodido estar selecionando Administrador o Usuario en el combo para hacer login ...

BlackZeroX

mmm aca te dejo un proyecto que hice para mi escuela como proyecto final de semestre use el ADO (Mi profesora awebo queria que usara el control DATA pero no le hice caso por la poca accesibilidad que dapero bueno)

Descargar

P.D.: Tiene errores pues lo hice en 2 dias ya hace 2 años y los unicos cambios que le realice fueron hace unas horas pues usaba un registro en la bdd de access para contar cuantos registros (ya sean de datos o usuarios para saber cuantos habian y esto fallaba ademas que era tonto)

Ojala te sirva

Dulces Lunas
The Dark Shadow is my passion.

byway

listo ya lo estuve revisando ... y si es algo como lo que quiero ... pero la verdad esta algo chapuzero  ;D ;D .. muchas palabras similares como declaraciones confunden... bueno luego lo reviso mas detalladamente... gracias..

Saludos.


seba123neo

Hola, es re facil, simplemente cuando agregas un usuario nuevo (no se si tu sistema tiene altas de usuario) me inmagino que si porque sino es inutil validar...pues cuando das de alta el usuario ademas de guardar la contraseña y el usuario tenes que tener un campo que guarde el tipo de usuario y despues comapras y listo...

saludos
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

byway

#5
Cita de: seba123neo en 16 Abril 2009, 01:18 AM
Hola, es re facil, simplemente cuando agregas un usuario nuevo (no se si tu sistema tiene altas de usuario) me inmagino que si porque sino es inutil validar...pues cuando das de alta el usuario ademas de guardar la contraseña y el usuario tenes que tener un campo que guarde el tipo de usuario y despues comapras y listo...

saludos

Si le adicione esas opciones.. de altas y bajas .. y tuve que adicionar el tipo tambien con un combo  ;D ;D y si eso es lo que hago comparar ...

edit: si lees al inicio de mi post puse eso que tengo una tabla con esos 3 campos..  ;D ;D

Angeldj27

No le veo ....  ;D ;D
Lo kieres hacer es dar privilegios o nop en ese caso creo k es re facil como dice seba solo es crearlo y des pues validar en un avariable global el tipo de usuario que es como siempre ago en mis aplicaciones solo digitan el user y pass y luego valido si es usuario o administartor y le doy los pribilegios de lugar.

Ps: Tambien se puede con niveles de usuarios por formulario a mi gusta mucho asi niveles y tipos

Saludos..


"Que vamos a hacer Mañana?..... Lo mismo que hacemos todos los dias Pinky tratar de Conquistar el Mundoooo!!!!!