IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Masquer le mot de passe par des "**"?


Sujet :

C++

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2010
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 30
    Points : 17
    Points
    17
    Par défaut Masquer le mot de passe par des "**"?
    bonjour,
    j'ai un projet en C++, ou j'ai une phsa d'authentification et j'aime bien cacher le mot de passe et la login par des "****" lors de la saisie au clavier
    le mot de passe et la login sont daja stocker dans un fichier "admin.txt" il faut que l'utilisateur s'authentifier avant d'acceder au logiciel voila c'est que j'ai arrivé de le faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    int Admin::authentifier(string log,string pass)
    {
     
    	Admin A;
    	int res;
    				  ifstream myfile;
    				  myfile.open ("admin.txt");
    				  if(!myfile.is_open())
    				  {
    					cout<<"Impossible d'ouvrir le fichier"<<endl;
    				  }
    				  else
    				  {
    						while(!myfile.eof())
    						{
    							myfile>>A;
    							if((A.getlogin()==log)&&(A.getpassword()==pass))
    							{
    								res = 0;//verifier
    							}
    							else
    							{
    								res = -1;
     
    						    }
    						}
    				   myfile.close();
    				  }
    return res;
     
    }
    int main()
    {string pass, log;
    int trouve;
    cout<<"donner le password";
    cinn>>pass;
    cout<<"donner le login";
    cin>>log;
    trouve=authentifier(log,pass);
    if (trouve==0)
    { cout<<"***********VOUS ETES BIEN L'ADMINISTRATEUR****************"<<endl;
      ........ //le traitement du logiciel
    }
    else
    {
    cout<<"******* DESOLER!!! VERIFIER LES INFORMATIONS********"<<endl;
    }
    mon code marche bien mais juste j'aime bien que vous m'aidez pour que je puisse avoir des "*****" lorsque je tape mon password et mon login
    tout le resultat de mon projet est sur le console j'ai pas un interface
    merci pour votre aide

  2. #2
    Membre émérite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2011
    Messages
    1 255
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 255
    Points : 2 627
    Points
    2 627
    Par défaut
    Salut,

    Le plus simple (et ce qui se fait le plus souvent en mode console) est de supprimer l'echo console.
    Ex.

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2010
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 30
    Points : 17
    Points
    17
    Par défaut
    bon ,j'ai essayé comme vous m'avez expliqué:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
     
    int Admin::authentifier(string log,string pass)
    {
     
    	Admin A;
    	int res;
    				  ifstream myfile;
    				  myfile.open ("admin.txt");
    				  if(!myfile.is_open())
    				  {
    					cout<<"Impossible d'ouvrir le fichier"<<endl;
    				  }
    				  else
    				  {
    						while(!myfile.eof())
    						{
    							myfile>>A;
    							if((A.getlogin()==log)&&(A.getpassword()==pass))
    							{
    								res = 0;//verifier
    							}
    							else
    							{
    								res = -1;
     
    						    }
    						}
    				   myfile.close();
    				  }
    return res;
     
    }
    int main()
    {string pass, log;
    int trouve;
    cout<<"donner le password";
    //cinn>>pass;
    getline(cin,pass);
    cout<<"donner le login";
    //cin>>log;
    getline(cin,log);
    trouve=authentifier(log,pass);
    if (trouve==0)
    { cout<<"***********VOUS ETES BIEN L'ADMINISTRATEUR****************"<<endl;
      ........ //le traitement du logiciel
    }
    else
    {
    cout<<"******* DESOLER!!! VERIFIER LES INFORMATIONS********"<<endl;
    }
    mais malheureusement toujours la meme resultat la login et le mot de passe s'affiche sur le console

  4. #4
    Membre émérite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2011
    Messages
    1 255
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 255
    Points : 2 627
    Points
    2 627
    Par défaut
    Tu utilises getline, si tu regardes bien, c'est la question, pas la réponse (solution).

    je n'ai pas testé j'ai juste vu que cette discussion pouvait t'intéresser.

    Ton code doit ressembler à ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    cout<<"donner le password";
    SetStdinEcho(false);
    //cinn>>pass;
    getline(cin,pass);
    SetStdinEcho(true);
    cout<<"donner le login";
    //cin>>log;
    getline(cin,log);

Discussions similaires

  1. [WD18] Mot de passe par defaut des fichiers Groupeware Utilisateur
    Par legero dans le forum WinDev
    Réponses: 5
    Dernier message: 10/09/2014, 16h52
  2. Réponses: 2
    Dernier message: 29/09/2007, 08h35
  3. Login et mot de passe par client
    Par codial dans le forum Bases de données
    Réponses: 10
    Dernier message: 11/12/2006, 10h55
  4. [HTML] Masquer champ mot de passe par des astérisques
    Par Jiraiya42 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 04/11/2006, 00h31
  5. masquer un mot de passe en c
    Par yamnetouaga dans le forum C
    Réponses: 5
    Dernier message: 09/05/2006, 14h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo