GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: LePtitClown le 18 Mars 2012, 11:47:04
-
Slt
J'essaye de passer mon système d'enregistrement avec des boites de dialogue mais je rencontre un petit soucis avec ma commande /login.
Voici le code appelé lorsque je rentre un mot de passe dans ma boite de dialogue appelé LOGIN:
switch(dialogid)
{
case LOGIN:
{
if(response)
{
new okpass[256];
okpass=dini_Get(CompteJoueur(playerid),"passe");
if(strlen(inputtext)!=strval(okpass))
{
//action si les mots de passes ne correspondent pas
Je ne vois pas où est le problème. Des idées ???
A+ ;)
-
je pense que tu as zapper d'encoder ton inputtext
-
Je pense que cette ligne de code est incorrect.
strlen(inputtext)!=strval(okpass)
-
Moi aussi, mais je ne vois pas par quoi remplacer cette ligne :(
Comment ça encoder mon inputtext ?
-
if( strcmp( inputtext, okpass ) == 0 && strlen( inputtext ) > 0 )
Essai ce code il devrai fonctionner.
-
Tu vérifies une différence ou une similitude là ?
-
Similitude.
-
Ok
Je viens de tester, ce code entraine un refus du mot de passe qu'il soit bon ou faux ???
-
comment tu encode ton mot de passe apparement c'est toujours le systeme qu'on avait fait ensemble donc
if(udb_hash(inputtext)!= strval(okpass))
-
Ça marche nickel merci. J' avais complètement oublié qu'il fallait que je prenne le mot de passe crypté et non celui en clair
A+ ;)
-
Il n'est pas chiffré (encrypté n'est pas correct en français) mais haché (comme les steaks).
Fonction de hachage - Wikipédia (http://fr.wikipedia.org/wiki/Fonction_de_hachage)