PDA

Ver la Versión Completa : Como Validar un Password


carlos gonzalez
10-05-2005, 16:50:22
Hola amigos tengo una duda ojala puedan ayudarme u orientarme se los voy agradecer bastante.

Lo que quiero hacer es validar la clave de usuario para habilitar un boton o para accesar a un formulario, pero la verdad no estoy muy familiarizado con las busquedas en delphi. Tengo un formulario con un edit(para que el usuario teclee su password) y dos botones el de aceptar y cancelar, y tengo una tabla llamada usuarios que tiene nombre, user y password, lo que quiero hacer es que al darle aceptar me busque si existe el pasword en la tabla y si existe me habilite un boton para que los usuarios puedan generar reportes. pero no se como hacer la busqueda. Si alguien puede ayudarme o echarme la mano, o si pudiera darme un ejemplo sencillito se los agradeseria infinitamente.
Estare esperando sus comentarios., Que Dios los bendiga

Su amigo Charless.

roman
10-05-2005, 17:04:49
Lo usual sería no buscar la contraseña sino el usuario y entonces cotejar la contraseña registrada para ese usuario con la que te escriben.

Suponiendo que tu tabla es usuarios = (usuario, password) y que tienes una componente Table, tblUsuarios, conectada a esta tabla, harías algo así:


// Buscas al usuario
if not (tblUsuarios.Locate('usuario', txtUsuario.Text, [])) then
raise Exception.Create('Usuario no registrado');

// cotejas la contraseña
if (tblUsuarios.FieldByName('password').AsString <> txtPassword.Text) then
raise Exception.Create('Contraseña incorrecta');


Aquí txtUsuario y txtPassword serían dos componentes TEdit para el nombe de usuario y contraseña respectivamente.

// Saludos

Perio
11-05-2005, 13:18:56
La tabla en un strinGrid o lo estas haciendo en SQL?
si es en SQL:
Tira la siguiente consulta con una Query:

SELECT * FROM tu_tabla WHERE NOMBRE=:nombre_usuario AND PASSWORD=:pasword_usuario;

Si te debuelve algo esta consulta es por que el usuario existe un tu_tabla,

El string de SQL se lo pasas a la query con la propiedad ADD de la query
los parametros con PARAMETERS, (son los que tienen los ':' antes del nombre en el comanado), lo ejecutas con el procedimiento ACTIVE en 'true'

Saludos desde Argentina

=:Perio:=