GARANTIR DESCONTO

Fórum Ainda sobre uso de senha no meu projeto #202346

20/12/2003

0

Caro colegas!

Ta dificil (sou iniciante), peguei uma dica como consultar um usuario na tabela e acessar o sistema so que ainda esta dando erros que não sei como resolver alguem pode me da uma mão e ver o que estou fazendo errado. Obrigado

Var
A:Integer;
begin
A := 1;
[color=blue:6941d25186]if not f_cadsenha.tbsenha.locate (´usuario;senha´,([Edit1.text,Edit2.text]),[]) then[/color:6941d25186]begin
A := 0; beep; showMessage (´Nome ou Senha incorretos´);
if A <> 0 then
begin
showMessage (´Usuário aceito´);
f_menu.show;
end;
end;
end;

[Error] USenha.pas(73): Ordinal type required
[Error] USenha.pas(73): Incompatible types: ´Integer´ and ´TCaption´
[Fatal Error] progcessos1.dpr(29): Could not compile used unit ´USenha.pas´

Wagner Normando


Wagner

Wagner

Responder

Posts

20/12/2003

Bilatto

8) Aqui mesmo você vai encontrar dois programas que você pode usar e aprender mais sobre este assunto. ok. Se continuar com alguma dúvida escreva que com certeza os amigos irão ajuda-lo.
Um abraço. E Feliz Natal !!!


Responder

Gostei + 0

21/12/2003

Anderson_blumenau

tambem gostaria de saber
eu tentei usar o Locate e nao consegui


Responder

Gostei + 0

21/12/2003

Wagner

Eh colega!

Acredito que seja facil, mais como ainda sou iniciante, ainda nao peguei muito esse lance, tô ficando maluco


Responder

Gostei + 0

21/12/2003

Fórum Vini

Wagner,
não uso muito o locate(prefiro SQL :lol: ), mas acredito que seja assim:
if not f_cadsenha.tbsenha.locate (´usuario;senha´,VarArrayOf([Edit1.text,Edit2.text]),[]) then begin 

Se não der me fala.

Espero ter ajudado.
Vinicius.


Responder

Gostei + 0

21/12/2003

Wagner

Cara eu já tentei dessa forma, mais olha so os erros, pode me ajudar?

Var
A:Integer;
begin
A := 1;
[color=blue:5d64f10ad9]if not f_cadsenha.tbsenha.locate (´usuario;senha´,VarArrayOf([Edit1.text,Edit2.text]),[]) then begin[/color:5d64f10ad9]
begin
A := 0; beep; showMessage (´Nome ou Senha incorretos´);
if A <> 0 then
begin
showMessage (´Usuário aceito´);
f_menu.show;
end;
end;
end;




[Error] USenha.pas(73): Undeclared identifier: ´VarArrayOf´
[Error] USenha.pas(73): Ordinal type required
[Error] USenha.pas(73): Incompatible types: ´Integer´ and ´TCaption´
[Error] USenha.pas(86): Statement expected but ´PROCEDURE´ found
[Fatal Error] progcessos1.dpr(29): Could not compile used unit ´USenha.pas´


Responder

Gostei + 0

21/12/2003

M_allencastro

:P Segue ai um exemplo do Dataset.Locate;
Me avise se foi util..

if not BancoDeDados.dsUsuarios.DataSet.Locate(´USU_LOGIN´, Trim(edLogin.Text),
[loCaseInsensitive, loPartialKey]) then
Begin
ShowMessage(´Login não cadastrado! Contate o Administrador do Sistema...´);
edLogin.SetFocus;
Exit;
end;


Responder

Gostei + 0

21/12/2003

Henry

Wagner isso é um sistema pra logon?


Responder

Gostei + 0

21/12/2003

Wagner

Não... isso e logon para sistema, ou seja quero colocar um login no meu sistema


Responder

Gostei + 0

21/12/2003

Henry

Olha Wagner, eu faço assim, pra login.....

Uma tabela com dois campos, ´Usuario´, ´senha ´, aonde usuario é o campo chave.

Dai assim:

No botão pra confirma, faço assim:

begin
if not table1.findkey([edit1.text]) then
messagedlg(´Usuario invalido´, mterror, [mbok], 0) else
begin
if not (table1senha.value = edit2.text) then
messagedlg(´Senha invalida´, mterror, [mbok], 0) else
begin
formTal.show;

Isso funciona que é uma beleza, qualquer coisa entre em contato comigo.

Um abarço, Henry.


Responder

Gostei + 0

23/12/2003

Anderson_blumenau

:P Segue ai um exemplo do Dataset.Locate; Me avise se foi util.. if not BancoDeDados.dsUsuarios.DataSet.Locate(´USU_LOGIN´, Trim(edLogin.Text), [loCaseInsensitive, loPartialKey]) then Begin ShowMessage(´Login não cadastrado! Contate o Administrador do Sistema...´); edLogin.SetFocus; Exit; end;


o problema ocorre quando se tenta passar dois parametros pra fazer a pesquisa quando uso com um parametro funciona bem


Responder

Gostei + 0

23/12/2003

Rodolpho123

Olá,
Bem, um erro gravíssimo que está acontecendo é que vc declarou a variável ´A´ como integer. Mas na mesma linha onde vc define-a como 1 e envia um som de beep, vc usa o comando ´ShowMessage´. Os valores deste comando só são aceitos (por padrão) valores do tipo string. Como há uma variável integer e um comando do tipo string, é lhe apresentado o erro ´Incompatible types - Integer and TCaption´. Caso vc queira mostrar na mensagem valores do tipo integer, o comando é ´ShowMessage(IntToStr(´variável do tipo integer´)). Mas para corrigir o seu problema, eu aconselho vc colocar os comandos um em cada linha, como:
A:= 1;
Beep;
ShowMessage(´bla,bla.bla.bla´)
E quanto ao outro problema, eu costumo a primeiro a mandar verificar se existe o usuário, pois se o Delphi encontrar o registro, automaticamente se é movido o ponteiro para este registro e neste registro, estarão o campo USUARIO e SENHA, aí eu mando o Delphi compara a senha digitada com a senha do banco de dados...

Um abraço e boas festas!!!!


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar