Ver Mensaje Individual
  #2  
Antiguo 31-05-2016
Avatar de jeremiselxi
jeremiselxi jeremiselxi is offline
Miembro
 
Registrado: ago 2008
Posts: 199
Reputación: 16
jeremiselxi Va por buen camino
Thumbs up Buen día

Buen día y Dios te bendiga mucho.

No sé cual base de datos estas utilizando, pero esto que quieres hacer del login, puedes hacerlo de dos maneras:

1) creas un usuario en la base de datos, luego das los permisos necesarios para la base de datos y de ahí en adelante, como ya tienes configurado cual tabla puede acceder mediante el componente tztable automáticamente podrá modificar esta tabla.

2) creas un usuario de esta aplicación: ejemplo si tu aplicación se llama ADM, creas un usuario ADMusers y le das acceso a la base de datos que contiene la tabla de cuentas. Luego creas una tabla llamada usuarios con los campos usuario, contraseña, nombre usuario etc. Creas un Tzconection y te conectas con este usuario al servidor de base de datos y a la base de datos. Posterior a esto, entonces usas un tzquery para hacer la conección a la tabla usuarios y si es el mismo que está en la base de datos, entonces entras al formulario de las cuentas, de lo contrario muestra un mensaje de que no puede acceder.


Un ejemplo de como te puedes conectar es:

Código Delphi [-]
//Usé un componente adoquery llamado "queryiniciarsession"

//botón conectar.


procedure TForm1_Form_Login_Principal.BitBtn1Click(Sender: TObject);
begin
if (txtusuario.Text='') or (txtpassword.Text='') then
    begin
      ShowMessage('Usuario y/o Contraseña Incorrecta');
    end
else
if (txtusuario.Text <>'') and (txtpassword.Text<>'') then
    begin

      form_tablas.queryiniciarsession.SQL.Clear;
      form_tablas.queryiniciarsession.SQL.add('select * from Usuarios where Usuario =:usu');
      form_tablas.queryiniciarsession.Parameters.ParamByName('usu').Value := txtusuario.Text;
      form_tablas.queryiniciarsession.Open;


      if (txtpassword.Text = form_tablas.queryiniciarsession.Fieldbyname('Password').Asstring) then
        begin

         

          // esto es para saber si el usuario tiene que cambiar la contraseña en el proximo inicio de sesión. 
          if form_tablas.queryiniciarsession.Fieldbyname('CambioProximaSession').Asstring = 'Si' then
           begin
               showmessage('Debes cambiar tu contraseña');
               form_cambiar_contrasena.show
            end
          else
          // esto es para saber si el usuario está bloqueado o inactivo.
          if form_tablas.queryiniciarsession.Fieldbyname('Estado').Asstring = 'Inactivo' then
           begin
               showmessage('Favor contactar al Administrador del Sistema ya que este usuario está inactivo.');
            end

          else
            begin
           // Si todo está bien muestra bienvenida porque todo está bien.
          ShowMessage('Bienvenido(a) ' + form_tablas.queryiniciarsession.Fieldbyname('Nombre_Completo').Asstring);
          formPrincipal.LabeNombredelUsuario.Caption := form_tablas.queryiniciarsession.Fieldbyname('Nombre_Completo').Asstring;
          formPrincipal.Label_posicion.Caption := form_tablas.queryiniciarsession.Fieldbyname('Posicion').Asstring;
          txtpassword.Text := '';



          //este es el formulario de administración.
          formPrincipal.Show;

           //este es el formulario del login
          Form1_Form_Login_Principal.Visible:= false;


            end


        end
      else
      begin
      ShowMessage('Usuario y/o Contraseña Incorrecta');
      end
    end;

end;

Cualquier inquietud o duda me dejas saber.
__________________
Cristo te ama, ven a d él, ya k te espera con los brazos abiertos. Dios te bendiga mucho
Responder Con Cita