ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

PROBLEMAS COM LOGIN
Ir à página Anterior  1, 2
 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Automação Comercial
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
ICMRS
Novato
Novato


Registrado: Domingo, 29 de Abril de 2012
Mensagens: 61

MensagemEnviada: Dom Jun 10, 2012 2:44 pm    Assunto: #RESOLVIDO Responder com Citação

Ghost_Rider escreveu:
Tá..bem simples, vamos considerar que sua tabela de usuários tenha o campo NOME e SENHA.
A table dessa tabela se chame tbUSUARIO, dai faça assim

if tbUSUARIO.Locate('nome',edit_com_nome.Text,[]) = True then \\achou
if tbUsuario.FieldByName('senha').AsString = edit_com_senha.Text then
//achou a senha valida para o usuario, dai permite acesso ao sistema

Entendeu ???



Siiim ... Ghost_Rider, muito obrigado cara !!! Agora esta dando certo !!! Agora a Tela de Login do meu TCC esta funcionando perfeitamente !!!

Muito obrigado mesmo !!!


#RESOLVIDO
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
ICMRS
Novato
Novato


Registrado: Domingo, 29 de Abril de 2012
Mensagens: 61

MensagemEnviada: Dom Jun 10, 2012 2:57 pm    Assunto: Responder com Citação

Só mais uma Duvida ... Se ele não acha o Usuario ele não da o Erro :/

Me informem uma possivel solução ???

A Unit segue abaixo


unit ULogin;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls;

type
TFrmLogin = class(TForm)
Image1: TImage;
GrpBxLogin: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
EdtApelido: TEdit;
EdtSenha: TEdit;
BtnOk: TBitBtn;
BtnCancelar: TBitBtn;
procedure BtnCancelarClick(Sender: TObject);
procedure BtnOkClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
FrmLogin: TFrmLogin;

implementation

uses UDM, UMenuPrin;

{$R *.dfm}

procedure TFrmLogin.BtnCancelarClick(Sender: TObject);
begin
Application.Terminate;
end;

procedure TFrmLogin.BtnOkClick(Sender: TObject);
begin
Dm.tab_Usuarios.Open; // abre a tabela tab_Usuarios
FrmMenuPrin.StatusBar1.Panels[2].Text := ' Usuário:' + FrmLogin.EdtApelido.Text + ' - '+ Dm.tab_UsuariosUsuDepto.AsSTring;

if Dm.tab_Usuarios.Locate('UsuApelido', EdtApelido.Text,[]) = True then //achou o usuario
if Dm.Tab_Usuarios.FieldByName('UsuSenha').AsString = EdtSenha.Text then
//achou a senha valida para o usuario, dai permite acesso ao sistema


begin

FrmLogin.Hide; //Esconde a tela
FrmMenuPrin.ShowModal; //chama a tela FrmMenuPrin no modo modal
FrmLogin.Release; //Remove a tela da memória
FrmLogin := Nil; //Atribui conteúdo nulo para a variável de tela FrmLogin

end
else
begin

MessageDlg('Nome ou senha do usuário inválidos.'+#13+#13
+ 'Se você esqueceu sua senha, consulte '+ #13
+ 'o administrador do sistema', mtError, [mbOK], 0);
EdtSenha.Clear; // limpa o objeto EdtSenha
EdtSenha.SetFocus; //Ajusta o foco para o objeto EdtSenha

end;

end;

end.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Ghost_Rider
Colaborador
Colaborador


Registrado: Segunda-Feira, 6 de Outubro de 2003
Mensagens: 4437

MensagemEnviada: Dom Jun 10, 2012 3:19 pm    Assunto: Responder com Citação

Esse seu form de login, é o primeiro que inicia ou é o form principal que incia primeiro ?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
ICMRS
Novato
Novato


Registrado: Domingo, 29 de Abril de 2012
Mensagens: 61

MensagemEnviada: Seg Jun 11, 2012 1:44 pm    Assunto: Responder com Citação

Ghost_Rider escreveu:
Esse seu form de login, é o primeiro que inicia ou é o form principal que incia primeiro ?


Inicia-se uma Tela Splash, ai inicia-se o Login e após o login inicia-se o Form Principal.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Ghost_Rider
Colaborador
Colaborador


Registrado: Segunda-Feira, 6 de Outubro de 2003
Mensagens: 4437

MensagemEnviada: Seg Jun 11, 2012 1:54 pm    Assunto: Responder com Citação

Tá...seus forms estão sendo carregados dinamicamente ou quando vc inicia o projeto já estão todos criados ???
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
ICMRS
Novato
Novato


Registrado: Domingo, 29 de Abril de 2012
Mensagens: 61

MensagemEnviada: Seg Jun 11, 2012 4:09 pm    Assunto: Responder com Citação

Ghost_Rider escreveu:
Tá...seus forms estão sendo carregados dinamicamente ou quando vc inicia o projeto já estão todos criados ???


As telas de Cadastro, relatórios, e pesquisas São criadas dinamicamente, e as telas de Splash, Login e Menu, já estão criados !!!! A tela Menu é a minha principal !
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Ghost_Rider
Colaborador
Colaborador


Registrado: Segunda-Feira, 6 de Outubro de 2003
Mensagens: 4437

MensagemEnviada: Seg Jun 11, 2012 4:18 pm    Assunto: Responder com Citação

Ta usando datamodule ou esta colocando os componentes de conexão num dos forms ???

Qual componente de acesso ao banco ta usando ?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
ICMRS
Novato
Novato


Registrado: Domingo, 29 de Abril de 2012
Mensagens: 61

MensagemEnviada: Seg Jun 11, 2012 4:21 pm    Assunto: Responder com Citação

Ghost_Rider escreveu:
Ta usando datamodule ou esta colocando os componentes de conexão num dos forms ???

Qual componente de acesso ao banco ta usando ?


Estou usando do DataModule que se chama DmConexao
Estou usando ADO, pois minha base de dados é em Access


Editado pela última vez por ICMRS em Seg Jun 11, 2012 4:47 pm, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
ICMRS
Novato
Novato


Registrado: Domingo, 29 de Abril de 2012
Mensagens: 61

MensagemEnviada: Seg Jun 11, 2012 4:33 pm    Assunto: Responder com Citação

Por que tipo o que está acontecendo é o seguinte, se você digitar o usuario certo, mas a senha errada, ele dá o aviso "

MessageDlg('Nome ou senha do usuário inválidos.'+#13+#13
+ 'Se você esqueceu sua senha, consulte '+ #13
+ 'o administrador do sistema', mtError, [mbOK], 0);
EdtSenha.Clear; // limpa o objeto EdtSenha
EdtSenha.SetFocus; //Ajusta o foco para o objeto EdtSenha

"

Mas se vocÊ digita o usuário errado, o botão OK, pra entrar fica sem ação... Ou seja ele não dá o erro que deveria dar !!!
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Ghost_Rider
Colaborador
Colaborador


Registrado: Segunda-Feira, 6 de Outubro de 2003
Mensagens: 4437

MensagemEnviada: Ter Jun 12, 2012 8:37 am    Assunto: Responder com Citação

Tá... na verdade não esta dando erro nenhum amigo, explica direito..da uma olhada no seu post....bom, vamos lá...

if Dm.tab_Usuarios.Locate('UsuApelido', EdtApelido.Text,[]) = True then
begin
//achou o usuario
if Dm.Tab_Usuarios.FieldByName('UsuSenha').AsString = EdtSenha.Text then
//achou a senha valida para o usuario, dai permite acesso ao sistema
begin
FrmLogin.Hide; //Esconde a tela
FrmMenuPrin.ShowModal; //chama a tela FrmMenuPrin no modo modal
FrmLogin.Release; //Remove a tela da memória
FrmLogin := Nil; //Atribui conteúdo nulo para a variável de tela frmLogin
end
else
begin
MessageDlg('Nome ou senha do usuário inválidos.'+#13+#13
+ 'Se você esqueceu sua senha, consulte '+ #13
+ 'o administrador do sistema', mtError, [mbOK], 0);
EdtSenha.Clear; // limpa o objeto EdtSenha
EdtSenha.SetFocus; //Ajusta o foco para o objeto EdtSenha
end
else
//mensagem do usuário não encontrado

end;


Da uma olhada no código que postei, logo abaixo do locate, coloquei um begin, e aqui em baixo, fechando esse begin um else para voce poder informar o usuario não encontrado..


Cara, vc disse que isso é um TCC, ta fazendo que curso ???
Porque esse "problema" é logica pura...ou vc pulou as aulas de logica ou seu professor é horrivel hein....
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
ICMRS
Novato
Novato


Registrado: Domingo, 29 de Abril de 2012
Mensagens: 61

MensagemEnviada: Ter Jun 12, 2012 12:45 pm    Assunto: Responder com Citação

Ghost_Rider escreveu:
Tá... na verdade não esta dando erro nenhum amigo, explica direito..da uma olhada no seu post....bom, vamos lá...

if Dm.tab_Usuarios.Locate('UsuApelido', EdtApelido.Text,[]) = True then
begin
//achou o usuario
if Dm.Tab_Usuarios.FieldByName('UsuSenha').AsString = EdtSenha.Text then
//achou a senha valida para o usuario, dai permite acesso ao sistema
begin
FrmLogin.Hide; //Esconde a tela
FrmMenuPrin.ShowModal; //chama a tela FrmMenuPrin no modo modal
FrmLogin.Release; //Remove a tela da memória
FrmLogin := Nil; //Atribui conteúdo nulo para a variável de tela frmLogin
end
else
begin
MessageDlg('Nome ou senha do usuário inválidos.'+#13+#13
+ 'Se você esqueceu sua senha, consulte '+ #13
+ 'o administrador do sistema', mtError, [mbOK], 0);
EdtSenha.Clear; // limpa o objeto EdtSenha
EdtSenha.SetFocus; //Ajusta o foco para o objeto EdtSenha
end
else
//mensagem do usuário não encontrado

end;


Da uma olhada no código que postei, logo abaixo do locate, coloquei um begin, e aqui em baixo, fechando esse begin um else para voce poder informar o usuario não encontrado..


Cara, vc disse que isso é um TCC, ta fazendo que curso ???
Porque esse "problema" é logica pura...ou vc pulou as aulas de logica ou seu professor é horrivel hein....




Eu que não sou bom em lógica mesmo ... E na verdade postei errado não é TCC é só um trabalho !
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Ghost_Rider
Colaborador
Colaborador


Registrado: Segunda-Feira, 6 de Outubro de 2003
Mensagens: 4437

MensagemEnviada: Ter Jun 12, 2012 2:22 pm    Assunto: Responder com Citação

Hum...e ai, deu certo ?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
ICMRS
Novato
Novato


Registrado: Domingo, 29 de Abril de 2012
Mensagens: 61

MensagemEnviada: Qua Jun 13, 2012 2:43 pm    Assunto: TÓPICO RESOLVIDO Responder com Citação

Ghost_Rider escreveu:
Hum...e ai, deu certo ?


Boa Tarde, não estava dando muito certo, mas ai eu dei uma procurada na internet e com a ajuda de meu profº consegui fazer o login funcionar com o componente ADOQuery...

Mas obrigadoo por toda ajuda nesse Fórum !!! Graças à esses problemas, busquei mais conhecimento, tanto aqui quanto na internet em geral !!! Muito obrigado pela ajuda !!!
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Automação Comercial Todos os horários são GMT - 3 Horas
Ir à página Anterior  1, 2
Página 2 de 2

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB