Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-03-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.439
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Fiebru Ver Mensaje
¿tienes por ahi algun libro de Delphi que sea entendible para los humanos?
Prueba con la "Cara oculta de Deplhi" que puedes encontrar en el FTP del Club (si revisas este directorio hay alguno más que te puede servir).

También puedes revisar este pequeño curso Online, que es bastante básico y muy bien explicado con imágenes.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #2  
Antiguo 06-03-2010
Fiebru Fiebru is offline
Miembro
 
Registrado: dic 2009
Posts: 16
Poder: 0
Fiebru Va por buen camino
Este es el codigo fuente de la ventana de entrada de usuario:

Código Delphi [-]
unit EntradaUsuario;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Mask, DBCtrls, DB, DBTables, ADODB;

type
  TFrmEntradaUsuario = class(TForm)
    BtnAceptar: TButton;
    BtnCancelar: TButton;
    DataSource1: TDataSource;
    ADOQuery1: TADOQuery;
    ADOQuery1NombredeUsuario: TWideStringField;
    ADOQuery1Contrasena: TWideStringField;
    Label1: TLabel;
    Label2: TLabel;
    EUsuario: TEdit;
    EContrasena: TEdit;
    ADOConnection1: TADOConnection;
    procedure BtnCancelarClick(Sender: TObject);
    procedure BtnAceptarClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FrmEntradaUsuario: TFrmEntradaUsuario;

implementation

uses Menu;

{$R *.dfm}

procedure TFrmEntradaUsuario.BtnCancelarClick(Sender: TObject);
begin
FrmEntradaUsuario.close
end;

procedure TFrmEntradaUsuario.BtnAceptarClick(Sender: TObject);
begin
if (ADOQuery1NombredeUsuario.Text = EUsuario.Text)
and (ADOQuery1Contrasena.Text = EContrasena.Text)
then FrmMenu.Show;
if (ADOQuery1NombredeUsuario.Text = EUsuario.Text)
and (ADOQuery1Contrasena.Text = EContrasena.Text)
then FrmEntradaUsuario.Hide
else Application.Messagebox('Clave Incorrecta', 'Acceso Denegado', MB_OK);
end;
end.

Última edición por rgstuamigo fecha: 06-03-2010 a las 13:24:40. Razón: Estética en el código
Responder Con Cita
  #3  
Antiguo 06-03-2010
Fiebru Fiebru is offline
Miembro
 
Registrado: dic 2009
Posts: 16
Poder: 0
Fiebru Va por buen camino
Sobre lo dicho por Neftali....

Tomare en cuenta esa informacion.
Responder Con Cita
  #4  
Antiguo 06-03-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola
El codigo dice:
Si el query es igual que el edit entonces abre el form.
Muy bien hasta ahi, PERO.
Cual usuario?, Cual clave? el query tiene un sql que dice, selecciona todo y lo hace, por supuesto desde el principio.
Lo logico es que SOLO mostrara o encontrara el primero ya que ahi es donde empieza.
Si viste el codigo que puse veras que existe un parametro dentro del query, este dice:
Si el parametro es igual al usuario entonces abre el from.
Me imagino que veras la diferencia.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #5  
Antiguo 06-03-2010
Fiebru Fiebru is offline
Miembro
 
Registrado: dic 2009
Posts: 16
Poder: 0
Fiebru Va por buen camino
Buen punto....

El archivo que me mandaste no se como abrirlo porque no dice que tipo de archivo es.

Entonces, ahi es donde tengo el problema, en los parametros, que no se como especificar que es un recorrido que debe hacer, en vez de agarrar el primer dato que encuentre.
Responder Con Cita
  #6  
Antiguo 06-03-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola
El query:
Código Delphi [-]
SELECT CodUsuario, Clave  FROM Usuarios WHERE
CodUsuario = :nom
Dice: Selecciona el codigo del usuario y la clave de la tabla usuarios.
Donde el codigo del usuario sea igual al parametro nom

El codigo del boton aceptar:
ADLoguin es el nombre del query (no te confundas)
Código Delphi [-]
procedure TFLogin.BtnOkClick(Sender: TObject);
begin
    LoginOK := False;
   ADLogin.Parameters.ParamByName('nom').Value:= EUsuario.Text;
   ADLogin.Active:= True;
   EUsuario.Text:= ADLogin.Fields[1].AsString;
   If ADLogin.RecordCount < 1 then
    Begin
       Cuenta := Cuenta + 1;
       MessageDlg('Usuario no encontrado',mtError, [mbOK], 0);
       EUsuario.Text := '';
       EClave.Text := '';
       ADLogin.Active := False;
       If Cuenta = 3 then Close;
    end
   else
       If ADLoginClave.AsString = EClave.Text then
        Begin
           LoginOk := True;
           ADLogin.Active := False;
           FClientes:=TFClientes.Create(self);
           try
           FLogin.Visible:= False;
           FClientes.ShowModal;
           finally
           FClientes.Free;
           end;
           Close;
        end
     else
         Begin
           Cuenta := Cuenta + 1;
           MessageDlg('Clave Inválida',mtError, [mbOK], 0);
           EClave.Text := '';
           ADLogin.Active := False;
           If Cuenta = 3 then Close;
         end;

end;
El archivo que coloque es un ZIP, dentro esta el ejemplo.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #7  
Antiguo 06-03-2010
Fiebru Fiebru is offline
Miembro
 
Registrado: dic 2009
Posts: 16
Poder: 0
Fiebru Va por buen camino
Se que es un ZIP...

Pero cuando lo descomprimi solo hay un archivo que no se que hacer con el.

El codigo que me pasaste lo voy a chequiar detenidamente a ver si me da resultado.

Gracias de antemano.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
captura de datos vlady3086 OOP 3 03-03-2009 17:08:52
enlazar datos con ventana de captura zidfrid API de Windows 3 28-04-2008 20:36:47
captura de errores de bases de datos en delphi 7 godie12345 Varios 5 11-12-2007 17:51:55
Forzar captura datos en un DBEdit Goyo OOP 4 20-09-2006 17:07:58
Captura Datos Com1 EdyBay Varios 2 04-08-2005 14:49:05


La franja horaria es GMT +2. Ahora son las 15:33:52.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi