Bloquage sur le mot de passe...

Messages postés
75
Date d'inscription
samedi 28 juin 2008
Statut
Membre
Dernière intervention
16 août 2011
- - Dernière réponse : cs_cantador
Messages postés
4996
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
- 11 avril 2011 à 10:44
Salut à TOUS!



<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

 





J'ai écris ces codes qui me permettent d'avoir accès à mon logiciel.



Mais il y a une question que je ne comprends pas:



Primo, quand j'introduis le nom de l'"utilisateur" et ensuite le "mot de passe" correctes. Ça passe pratiquement!




 





Segundo, s'il arrive que j'introduise incorrectement une de ses "obligations". Le message de



non accès apparait: Mot de passe incorrecte!



Mais quand je réintroduit correctement ses "obligations". Il y a bloquage...rien ne marche!




 





Pour que ça marche, je dois reinicialiser le programme afin d'introduire correctement les dites obligations.




 






 






 





var achou : boolean;





  begin







    achou := false;







         
try











            while  not ADOMotPasseEntre.eof do begin










              if (ADOMotPasseEntre.fieldbyname('utilizador').asstring = Utilisateur.text) and










                 (ADOMotPasseEntre.fieldbyname('senha').asstring = MotPasse.text)










               then begin










                  achou := true;










                  Entre.show;










              end;










     
          ADOMotPasseEntre.next;










            end;










            if not achou  then begin










               
showMessage('Mot de passe incorrecte!');







           
end;











          finally   










          end;










LunaSoft
Afficher la suite 

3 réponses

Messages postés
21
Date d'inscription
mercredi 18 décembre 2002
Statut
Membre
Dernière intervention
6 octobre 2008
0
Merci
Bonjour,

tu devrais peut-être faire une requête plûtot que parcourir ta table entièrement.

Mais dans ton cas, je pense qu'il faut que tu repositionnes ta table sur la première ligne de donnèes. Car à la fin de ta procèdure, tu es en dernière position, donc il ne reparcourt pas.

Enfin, à priori, tu stockes tes mots de passe en clair dans ta base de données. Pense à les crypter. Il y a plein d'exemples sur ce site.

var achou : boolean;

  begin

    achou := false;
          try<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

 

            ADOMotPasseEntre.First;

            while  not ADOMotPasseEntre.eof do begin

              if (ADOMotPasseEntre.fieldbyname('utilizador').asstring = Utilisateur.text) and

                 (ADOMotPasseEntre.fieldbyname('senha').asstring = MotPasse.text)

               then begin

                  achou := true;

                  Entre.show;

              end;

                ADOMotPasseEntre.next;

            end;

            if not achou  then begin

                showMessage('Mot de passe incorrecte!');

            end;

          finally   

          end;

Cordialement

Davix123
Commenter la réponse de davix123
Messages postés
11
Date d'inscription
mardi 30 décembre 2008
Statut
Membre
Dernière intervention
15 avril 2011
0
Merci
Soft protégé par mot de passe
Bonjour tous le monde, ou la protection des (SOFTS ou applications client) est un domaine très compliqués, mais personnellement suite à mes différents entretient dans le domaine de l'électronique et de l'informatique créative j'utilise une nouvelle approche que Jai tester et je suis convaincu de sa fiabilité. Donc pas de long discourt je vous invite directement à découvrir cette méthode qui vous permet de vendre vos SOFTS ONLINE ou sur CD ou DVD en toute sécurité télécharger la solution gratuitement sur http://sosdeveloper.atspace.eu/
Commenter la réponse de cs_eleuch
Messages postés
4996
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
9
0
Merci
bonjour,

@Lunasoft :

pas besoin de boucle sur la table !
Il faut utiliser la méthode locate
avec ADOQuery.


cantador
Commenter la réponse de cs_cantador