Bienvenido: ( Identificarse | Registrarse )      
Foros de Trucos Windows
Closed TopicStart new topicStart Poll

Outline · [ Estándar ] · Lineal+

> Usuario y contraseña en formulario VB 6.0, Verificar que concuerde

Sisiaf
post Apr 9 2005, 01:25 AM
Publicado: #1


Maestro
*****

Grupo: Members
Mensajes: 383
Registrado: 7-February 05
Desde: Edo. de México, Méxcico
Miembro nº: 76.786



wink.gif Hola, antes que todo, saludos.

Sucede que tengo un formulario que contiene 6 controles (2 etiquetas llamadas lblUser y lblPass; combobox llamado cmbUser; un trextbox llamado txtPass; dos commandbutton llamados cmdPass y cmdSalir; el formulario con la propiedad BorderStyle en Fixed Single).

Lo que pretendo es que el cmbUser cargue una lista de usuarios de una base de datos acces.

La DB tendrá campos "Nombre" y "Usuario".

Obviamente todos los usuarios y contraseñas creadas en la base de datos en tiempo ejecución serán usuarios y contraseñas válidos, pero el problema radica que necesito saber como hacerle para que el programa identifique un usuario(válido) con su respectiva contraseña(válida), dado que todos los registros de la base de datos son válidos. Un ejemplo:

NOMBRE CONTRASEÑA <---------Estos son los campos

usuario1--------------------contraseña1 <---------Primer registro
usuario2--------------------contraseña2 <---------Segundo registro

Estos datos los toma visual basic como datos válidos

pero lo que pasa es que a la hora de ejecutar el programa ingreso por ejemplo como nombre de usuario "usuario1" y como contraseña "contraseña1" y me lo acepta y si ingreso como usuario "usuario1" y como contraseña "contraseña2" también me lo acepta porque como dije antes todos los usuarios y contraseñas son válidos. Necesito que visual me verifique que la contraseña vaya de acuerdo al usuario, de lo contrario, que me marcque error(porque no concuerda el usuario con la contraseña aún si ambos son válidos)

Les muestro el código que tengo.

Private Sub cmdPass_Click()
validuser = 'No sé qué poner después del signo de igual
validpass = 'No sé qué poner después del signo de igual

'inicia sentencia if
If cmbUser.text = validuser And txtPass = validpass Then ' Si el usuario es correcto y la contraseña también entonces
valido = True ' Usuario y contraseña correctos
Else ' De lo contrario...
valido = False 'Usuario y contraseña no concuerdan
End If 'fin de la sentencia if

If cmbUser.Text = "" And txtPass.Text = "" Then ' Si estan vacías ambas casillas entonces...
MsgBox "Por favor ingrese sus datos", vbExclamation, "Atención" ' Mensaje
Else ' De lo contrario...
If cmbUser.Text <> validuser And txtPass.Text <> validpass Then 'Si no son válidos los datos entonces...
MsgBox "Datos incorrectos", vbExclamation, "Atención" 'Mensaje
cmbUser.Text = "" 'Limpia usuario
txtPass.Text = "" 'Limpia contraseña
Else 'De lo contrario...
If cmbUser.Text = validuser And txtPass.Text <> validpass Then 'Si contraseña incorrecta entonces...
MsgBox "Contraseña incorrecta", vbExclamation, "Atención" ' Mensaje
cmbUser.Text = "" 'Limpieza
txtPass.Text = "" 'Limpieza
Else 'De lo contrario...
If cmbUser.Text <> validuser And txtPass.Text = validpass Then 'Si usuario incorrecto entonces...
MsgBox "Nombre de usuario incorrecto", vbExclamation, "Atención"
cmbUser.Text = ""
txtPass.Text = ""
Else
If cmbUser.Text = validuser And txtPass.Text = validpass And valido = False Then ' aquí me verifica si concuerdan usuario y contraseña
MsgBox "Datos incorrectos", vbExclamation, "Atención"
Else
If cmbUser.Text = validuser And txtPass.Text = validpass And valido = True Then 'Si usuario y contraseña respecto uno del otro son correctos...
MsgBox "Bienvenido(a) " + validuser
End If
End If
End If
End If
End If
End If

End Sub

Como pueden ver tengo las variables "validuser" y "validpass" que tomarán las cadenas desde la base de datos la cuál se redimencionará o quedará vacía a medida que se agreguen o eliminen usuarios(para esto usaré otro formulario posteriormente) y un valor booleano llamado "valido" que se encargará de comparar la concordancia de los valores que contenga "validuser" con respecto a "validpass" y también pueden ver que no sé como hacer funcionar la comparación ranting.gif .

Lo que tengo en mente para esto es declarar otro booleano llamado "comparar"
que se encargará ÚNICAMENTE de comparar la relación usuario-contraseña, ya que "valido", en pocas palabras, únicamente me comprueba la existencia del usuario y contraseña válidos.

Cómo debo declarar "valido" para que verifique los registros de la BD? notengoidea.gif
Voy bien por éste camino o se debe proceder con diferente lógica? cry1at.gif

En pocas palabras, quiero un formulario que funcione de forma parecida al inicio de sesión de windows, msn messenger, y demás programas. cool.gif

NOTA: Si es necesario crear el booleano "comparar" cómo lo debo hacer, es decir que características debe tener, qué códogo le corresponde, en pocas palabras como lo hago funcionar. Si lo creo éste deberá comparar la relación usuario-contraseña, y le dará la orden a "valido" para que cambie a falso o verdadero según sea el caso.

NOTA: El combobox "cmbUser" lo puedo cambiar por un listbox o una simple caja de texto, en realidad eso no importa mucho.

NOTA: Ya me hice bolas wacko.gif . Ayudenme por favoooor!!! cry1at.gif. Ya me bloqueé y no quiero formatear mi cerebro tongue.gif

De antemano Gracias y un saludo, John. bye1.gif


User is offlineProfile CardPM
Go to the top of the page
+Quote Post
RadicalEd
post Apr 9 2005, 11:13 PM
Publicado: #2


Desocupado Programando
Group Icon

Grupo: Moderadores
Mensajes: 649
Registrado: 7-February 05
Desde: SoloCodigo
Miembro nº: 76.900



Yo de DB no manejo casi, no me gustan matlingua5bi.gif matlingua5bi.gif , pero si nos vamos a sentencias SQL si las manejo bien y se que si manejas ADO, DAO o DATA puedes utilizar esta sentencia.
QUOTE (Sisiaf)
validuser = 'No sé qué poner después del signo de igual

CODE
validuser = "Select user from tabla"

Ojala te oriente
Chao

PD. El post de retos lo deje por que nadie participa que pereza



User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Geniusr
post Apr 10 2005, 02:31 AM
Publicado: #3


The best
Group Icon

Grupo: Miembros Vitalicios
Mensajes: 1.254
Registrado: 3-November 04
Desde: Cancun Q. Roo, México
Miembro nº: 31.068



Mandame un mensaje a geniusrpj@hotmail.com para que te envie un pequeño ejemplo de como uso el nombre de usuario y las contraseñas.

Posiblemente te sirva para algo.

saludos...


User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Sisiaf
post Apr 10 2005, 03:56 AM
Publicado: #4


Maestro
*****

Grupo: Members
Mensajes: 383
Registrado: 7-February 05
Desde: Edo. de México, Méxcico
Miembro nº: 76.786



QUOTE
Ojala te oriente
Chao

PD. El post de retos lo deje por que nadie participa que pereza


Gracias, ahora ya sé qué poner en "validuser" (el usuario de la BD), pero cómo hago para que me verifique que la contraseña que introduzca el usuario en "txtPass" corresponda al usuario seleccionado?.

QUOTE

Mandame un mensaje a geniusrpj@hotmail.com para que te envie un pequeño ejemplo de como uso el nombre de usuario y las contraseñas.

Posiblemente te sirva para algo.

saludos...


Gracias, seguro que me servirá pués nunca antes he hecho un formulario para validar usuarios y contraseñas. biggrin20jy.gif

biggrin.gif Ahora mismo lo envío

Nota: A mí tampoco se me dá eso de las bases de datos, por eso me puse a investigar si se puede hacer de otra forma, pero(me da pena decirlo) no entendí mucho que digamos confused.gif
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Geniusr
post Apr 10 2005, 04:27 AM
Publicado: #5


The best
Group Icon

Grupo: Miembros Vitalicios
Mensajes: 1.254
Registrado: 3-November 04
Desde: Cancun Q. Roo, México
Miembro nº: 31.068



Archivo adjunto enviado.

saludos...
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Sisiaf
post Apr 10 2005, 04:56 AM
Publicado: #6


Maestro
*****

Grupo: Members
Mensajes: 383
Registrado: 7-February 05
Desde: Edo. de México, Méxcico
Miembro nº: 76.786



QUOTE
Archivo adjunto enviado.

saludos...


Saludos, ya lo recibí y en este momento ya lo empecé a personalizar clap.gif

QUOTE
Que bueno que te sirva.

No es tan dificil como parece, un dia que no tenia mucho que hacer me puse a programar hasta lograr esa forma.

facil no crees?

saludos.




Sí ya me dí cuenta que yo le estaba dando muchas vueltas al asunto biggrin20jy.gif

Gracias!

Saludos, John bye1.gif
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
sabepoco
post Apr 21 2005, 08:56 PM
Publicado: #7


Unregistered









Formulario de Inicio de sesión


Existe una persona que tiene la idea para utilizar un formulario de inicio de secion, el muestra un codigo complejo pero incompleto yo e creado el siguiente codigo para un inicio de secion de usuarios con contraseña. Mi aplicación empieza con una pantalla de inicio la cual permanece estatica asta que se pulsa una tecla, al hacer esto se carga el formulario de inicio de sesión el cual pide nombre de usuario y contraseña ( en la parte inferior aparecen dos botones de comando aceptar, cancelar) en caso de dar aceptar el sistema acede a mi base de datos y busca si existe un usuario = al estipulado en caso de que sea verdadero entoces compara la contraseña (encaso contrario pide se introdusca un nombre de usuario nuevo) y si esta es verdadera llama al formulario prinsipal denominado menu ( del caso contrario pide llenar denuevo la contraseña).

Bueno el codigo va mas o menos asi:


CODE
Option Explicit
Public LoginSucceeded As Boolean

   Private Sub cmdCancel_Click()
   LoginSucceeded = False
   Me.Hide
   End Sub


Private Sub Form_Load()
 
   Data1.DatabaseName = "C:\Documents and Settings\Administrador\Mis documentos\Documentos\SISTEXI\SICE.mdb"
   Data1.RecordSource = "Id"
   usuario.DataField = "Usuario"
   contraseña.DataField = "contraseña"
   contraseña.Text = ""
   usuario.Text = ""
End Sub


Private Sub cmdOK_Click()
   'comprobar si la contraseña es correcta
   
        Dim Busca1 As String
        Dim busca2 As String
        Dim Criterio As String
       
       usuario.Text = ""
       contraseña.Text = ""
       
       Busca1 = [usuario]
       
        Criterio = "usuario like '*" & Busca1 & "*'"
        Data1.Recordset.FindFirst Criterio
        If Data1.Recordset.NoMatch Then
               
                 MsgBox ("El usuario no existe")
                 usuario.SetFocus
                 SendKeys "{Home}+{End}"
                 Data1.Recordset.MoveLast
                 usuario.Text = ""
                 
          Else
           
           busca2 = [contraseña]
       
        Criterio = "contraseña like '*" & busca2 & "*'"
        Data1.Recordset.FindFirst Criterio
        If Data1.Recordset.NoMatch Then
               
                 MsgBox ("Contraseña incorrecta")
                 contraseña.SetFocus
                 SendKeys "{Home}+{End}"
                 Data1.Recordset.MoveLast
                 usuario.Text = ""
       acceso.Show
       Me.Hide
                 
             Else
             MENU.Show
             Me.Hide
       End If
       End If

    End Sub


Esto es todo espero y os sirva si encuentras algun error porfavor asme lo saber y si es posible muestra tu correción. SP2004 sabepoco2004@yahoo.com.es
ATENTAMENTE
SP2004
Go to the top of the page
+Quote Post
Sisiaf
post Apr 21 2005, 11:06 PM
Publicado: #8


Maestro
*****

Grupo: Members
Mensajes: 383
Registrado: 7-February 05
Desde: Edo. de México, Méxcico
Miembro nº: 76.786



QUOTE
Esto es todo espero y os sirva si encuentras algun error porfavor asme lo saber y si es posible muestra tu correción. SP2004 sabepoco2004@yahoo.com.es
ATENTAMENTE
SP2004


Gracias, también voy a probar tu código thumbsup.gif , aunque ya estoy trabajando sobre el que me mando Geniusr. thumbsup.gif

Un saludo, John bye1.gif
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

 
Closed TopicTopic OptionsStart new topic

Collapse

> Topicos similares

Contraseña de ROOT bitacoro 192 4 Nov 23 2008, 06:31 PM
By: ornitorrinco's
urgente no puedo inicial mi seccion de usuario marcanoerick 123 0 Nov 18 2008, 07:10 PM
By: marcanoerick
limitar programas a un usuario date 121 1 Nov 18 2008, 03:10 PM
By: Mau85
Agregar Usuario en mysql 925776310 107 1 Nov 15 2008, 07:45 PM
By: patricioirrazabal
Di una mentira de un usuario II JaCoBo 717 46 Nov 13 2008, 07:15 PM
By: xMIMIx