Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-07-2011
DOS DOS is offline
Miembro
NULL
 
Registrado: jul 2011
Posts: 173
Poder: 15
DOS Va por buen camino
Question Consulta sobre contraseña

Hola a todos, Se muy bien que en este foro hay ejemplos de contraseñas o logins, pero son un poquito mas avanzadas, yo estoy realizando uno con mis conocimientos basicos y solucionarlo de manera simple.
Les paso mi codigo
procedure TForm1.Button1Click(Sender: TObject);
var
a,b: string;
c:integer;
begin
a:=edit1.text;
b:=edit2.Text;
table1.First;
edit1.SetFocus;
c:=1;
while table1.Eof = false do
begin
while c < 4 do
begin //va a comparar en una tabla el apellido y la clave
edit1.Clear;
edit2.Clear;
edit1.SetFocus;
table1.Next;
if (table1.FieldByName('Apellido').AsString = a) and (table1.fieldbyname('Clave').Asstring = b)
then
begin //si la clave es correcta va al formulario 2
form1.Hide;
form2.show;
table1.Next;
c:=4;
end
else
begin //si es incorrecta muestra un mensaje de error
showmessage('Clave incorrecta');
end;
c:=c+1; //incrementa en 1 al contador
end;

end;
showmessage('adios'); // a los tres intentos fallidos muestra un mensaje y sale
end;

Pero resulta que si pongo mal la clave, me muestra el cartel y le tengo que dar tres veces ok para que vuelva al menu y volver a intentar.
si le agrego close despues del cartel de "adios" sale del programa al primer mal intento.
Agradesco cualquier correccion, dentro de los comandos utilizados.
Responder Con Cita
  #2  
Antiguo 30-07-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola
Veamos algunas cosas:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
 var
 a,b: string;
 c:integer;
 begin
 a:=edit1.text;
 b:=edit2.Text;
 // table1.First; (para que?
//  edit1.SetFocus; (para que ? 
 c:=1;
 // while table1.Eof = false do (para que ?
 //begin
 while c < 4 do
 begin //va a comparar en una tabla el apellido y la clave
 edit1.Clear;
 edit2.Clear;
 edit1.SetFocus;
 // table1.Next;
 if (table1.FieldByName('Apellido').AsString = a) and (table1.fieldbyname('Clave').Asstring = b)
 then
 begin //si la clave es correcta va al formulario 2
 form1.Hide; // no lo creo ?
 form2.show;
 // table1.Next; (para que?
 c:=4;
 end
 else
 begin //si es incorrecta muestra un mensaje de error
 showmessage('Clave incorrecta');
 end;
 c:=c+1; //incrementa en 1 al contador
 end;

 end;
 showmessage('adios'); // a los tres intentos fallidos muestra un mensaje y sale
 end;
Que BD usas ?.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #3  
Antiguo 30-07-2011
DOS DOS is offline
Miembro
NULL
 
Registrado: jul 2011
Posts: 173
Poder: 15
DOS Va por buen camino
Las tablas las creo con el database desktop que trae Delphi
Ahi ve que pusistes algunos para que, seguramente en un Delphi mas avanzado esto sea una tonteria, pero hasta ahora es lo que me enseñaron.
Por ejemplo cuando pongo
table1.First; (para que? / Para que se situe en la primera posicion de la tabla edit1.SetFocus; (para que ? /Para que se posisione en el primer Edit
while table1.Eof = false do (para que ? / Creo que era para que recorra toda la tabla
form1.Hide; // no lo creo ?/ Es lo que me enseñaron para cerrar el formulario, al menos se que funciona.
Es lo que te se explicar con lo que me enseñaron hasta el momento, voy a probar realizandoles esas modificaciones.
form2.show;// con esto voy al formulario 2
Gracias.
Responder Con Cita
  #4  
Antiguo 30-07-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola
Empecemos desde el principio.
1-Usas un Componente Table, eso quiere decir que seguramente lo abres al inicial el form.
Lo mejor, cuando se usa ese componente es hacer un filtro, no recorrer la tabla completa.
2-Haces que el form 1 se esconda y se muestre el form 2.
Lo mejor es que el form 1 llame al dos que es que que deberia ser el login.

Saludos
__________________
Siempre Novato
Responder Con Cita
  #5  
Antiguo 30-07-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola
Pregunto:
Tienes que trabajar obligatoriamente con Paradox? o lo puedes hacer con otra BD ?.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #6  
Antiguo 30-07-2011
DOS DOS is offline
Miembro
NULL
 
Registrado: jul 2011
Posts: 173
Poder: 15
DOS Va por buen camino
Gracias Caral
Si tengo que usar Paradox y es correcto lo que decis. Se que algo esta mal, pero supuestamente con esas herramientas basicas lo deberia poder hacer, tiene que ser algo muy simple; crear una tabla con nombre y usuario, en Paradox y en Delphi un formulario en el cual ingresamos los datos y comparamos, si es correcto vamos al formulario2 y cerramos el primero.
Si esta mal, lo indicamos con un mensaje y a los 3 intentos erroneos, se cierra el programa.
Pense que iba a ser mas facil, pero hace una semana que ando dando vueltas con lo mismo
Responder Con Cita
Respuesta



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
Realizar una consulta sobre los registros que devuelve otra consulta Borjaserrano Firebird e Interbase 12 01-10-2007 23:19:44
Consulta sobre App MDI MaMu OOP 4 15-07-2007 21:30:15
Consejo sobre uso de contraseña. alfredosg19 Varios 2 08-03-2005 14:22:43
consulta sobre .ini bytecero Varios 2 02-02-2005 21:01:09


La franja horaria es GMT +2. Ahora son las 06:30:18.


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