O micheus colocou uma dica de login com o seguinte código:
Crie uma tabela no seu banco de dados com apenas 3 campos: Login, Senha e Cargo (todos os três alfanuméricos, podendo qualquer um ser chave primária).
No DataModule ou no próprio formulário de senha coloque um TTable, um TDataSource e um TQuery. No formulário de senha ponha 2 TEdits e um TButtom (BtnOK) O código está listado abaixo.
CODE
procedure TFrmAcesso.BtnOKClick(Sender: TObject);
Var Login, Senha, Tipo : String;
begin
DM.QrAcesso.Close;
DM.QrAcesso.SQL.Text := 'Select * from Acesso '+
'Where Login =:LoginBusca and Senha =:SenhaBusca';
DM.QrAcesso.Params[0].AsString := (Edit1.Text);
DM.QrAcesso.Params[1].AsString := (Edit2.Text);
DM.QrAcesso.Open;
Login := DM.QrAcessoLogin.Value;
Senha := DM.QrAcessoSenha.Value;
Tipo := DM.QrAcessoTipo_Usuario.Value;
if (Login = Edit1.Text) and (Senha = Edit2.Text) and (Tipo = 'Administrador')then begin
{Nesse caso é um Administrador que está utilizando o sistema, então habilite todas as funções do sistema}
FrmPrincipal.ShowModal;
end;
if ( Login = Edit1.Text) and (Senha = Edit2.Text) and (Tipo = 'Usuário')then begin
{Nesse caso é um Usuário que está acessando o sistema, então desabilite tudo que você não quer que ele tenha acesso, como determinados formulários, botões, consultas, entre outros}
FrmPrincipal.ShowModal;
end;
if (Login <> Edit1.Text) or (Senha <> Edit2.Text) then begin
ShowMessage('Login ou Senha inválidos.');
Edit1.Clear;
Edit2.Clear;
Edit1.SetFocus;
end;
end;
Uma coisa legal dessa rotina é que permite que o programador possa implementar no código o que é permitido fazer por um Usuário do sistema e o Administrador do mesmo.
Como realmente achei a idéia super interessante fui tentar estudá-la.
Não tenho muita experiência com banco de dados muito menos com componente TQuery.
Fiz toda a parte fácil e na hora de compilar apareceram as dúvidas;
1) Na montagem da tabela(fiz em paradox), já tenho que digitar os valores para login, senha e cargo.
Tipo: paulo para login, 3456 para senha e administrador para Cargo?
2)Esta me faltando o básico mesmo. Com vinculo o TQuery? É com o mesmo e único DataSource?
Pergunta
Paulo Nobre
O micheus colocou uma dica de login com o seguinte código:
Como realmente achei a idéia super interessante fui tentar estudá-la.
Não tenho muita experiência com banco de dados muito menos com componente TQuery.
Fiz toda a parte fácil e na hora de compilar apareceram as dúvidas;
1) Na montagem da tabela(fiz em paradox), já tenho que digitar os valores para login, senha e cargo.
Tipo: paulo para login, 3456 para senha e administrador para Cargo?
2)Esta me faltando o básico mesmo. Com vinculo o TQuery? É com o mesmo e único DataSource?
3)Está aparecendo erro de compilação em:
[Error] USenhaLogin.pas(39): Undeclared identifier: 'QrAcessoLogin'
[Error] USenhaLogin.pas(40): Undeclared identifier: 'QrAcessoSenha'
[Error] USenhaLogin.pas(41): Undeclared identifier: 'QrAcessoTipo_Usuario'
Não estou sabendo fazer aparecer QrAcessoLogin, QrAcessoSenha etc..
O nome que dei ao TQuery foi QrAcesso.
Será que alguém que testou a dica ou tenha experiência poderia, quando tiver tempo dar uma detalhada
para este ignorante aqui?
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.