Fonction d'identification

cs_cassecroute Messages postés 44 Date d'inscription mercredi 8 novembre 2000 Statut Membre Dernière intervention 17 février 2006 - 19 oct. 2005 à 15:56
TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 - 20 oct. 2005 à 00:06
Bonjour, je suis entrain de faire un projet en c#, en mode console. C'est un questions-réponses, mais seul l'administrateur peut créer, supp ... Donc je voulais mettre une sorte d'identification toute bête. Pour cela, j'avais fait une fonction du genre :

static bool controle()
{
string ident, mdp;
Console.WriteLine("\nIdentifiant : \n");
ident = Console.ReadLine();

Console.WriteLine("\nMot De Passe : \n");
mdp = Console.ReadLine();

if ( ident "azerty" && mdp "0123")

{
return true;


}
else
{
return false;
}
}

Je suis pas sur d devoir renvoye un bool.

Mais donc j'apelle cette fonction dans mon programme principal, et je voudrais que si ceux sont les bons identifiants, il continue le programme sinon ...

Mais je ne sais pas comment lui dire cela.


J'espère que vous pourrez m'aider, merci d'avance.

7 réponses

cs_poullos Messages postés 145 Date d'inscription lundi 13 janvier 2003 Statut Membre Dernière intervention 27 décembre 2005 2
19 oct. 2005 à 16:03
Ben c'est pas compliqué, dans ton programme tu fais :



int nbfalse = 0;



while (controle() == false)

{

Console.WriteLine("\n Identifiant ou mot de passe incorrect, veuillez recommencer : \n");

nbfalse++;

if (nbfalse == 3)

Console.WriteLine("\n Trois essais sont passés au revoir ... \n");

exit();

}

else

{

// code pour continuer ton programme

}



Ca te permet de donner 3 chances a l'utilisateur de se logger, si il echoue ca quitte, s'il

reussit ca continue

La brigade meurt mais ne se rend pas (Hisoka)
0
cs_poullos Messages postés 145 Date d'inscription lundi 13 janvier 2003 Statut Membre Dernière intervention 27 décembre 2005 2
19 oct. 2005 à 16:04
Pardon un else s'etait glissé en trop ^^













int nbfalse = 0;



while (controle() == false)

{

Console.WriteLine("\n Identifiant ou mot de passe incorrect, veuillez recommencer : \n");

nbfalse++;

if (nbfalse == 3)

{

Console.WriteLine("\n Trois essais sont passés au revoir ... \n");

exit();

}

}



// code pour continuer ton programme


La brigade meurt mais ne se rend pas (Hisoka)
0
cs_cassecroute Messages postés 44 Date d'inscription mercredi 8 novembre 2000 Statut Membre Dernière intervention 17 février 2006
19 oct. 2005 à 16:08
merci beaucoup, pour le else, j'avais remarqué, donc pas grave. je vais de suite changer ma réponse acceptée ;)
0
cs_cassecroute Messages postés 44 Date d'inscription mercredi 8 novembre 2000 Statut Membre Dernière intervention 17 février 2006
19 oct. 2005 à 17:10
petit probleme, lorsque j'arrive au bout de la troisieme fautes, j'ai bien le message qui me dit que ça fait trois fois que j'essaye, mais je ne quitte pas le programme, avec ma fonction "quit()" qui est égale à ta fonction "exit()" ...

Il me redemande mes identifiants...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_cassecroute Messages postés 44 Date d'inscription mercredi 8 novembre 2000 Statut Membre Dernière intervention 17 février 2006
19 oct. 2005 à 17:41
j'ai remarqué que si j'appelais une autre fonction,comme creer(), ça me déclenchait bien ce qui était dans creer(), et il ne me demandait plus les identifiants . Je comprends plus rien ...
0
cs_cassecroute Messages postés 44 Date d'inscription mercredi 8 novembre 2000 Statut Membre Dernière intervention 17 février 2006
19 oct. 2005 à 18:21
en fait si, après exécution de ma fonction creer(), il me redemande encore mes identifiants, cela doit etre du, au "while", mais je ne sais pas comment faire, aidez- moi!!! s'il vous plait!!!
0
TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 23
20 oct. 2005 à 00:06
int maxEssai = 3;

while (!controle() && --maxEssai > 0 )
{
Console.WriteLine("\n Identifiant ou mot de passe incorrect, veuillez recommencer : \n");
}

if (maxEssai == 0)
Application.Exit();

::|The S@ib|::
MVP C#.NET
0
Rejoignez-nous