Odbije lozinka

Započeo Snike02, Decembar 24, 2019, 19:57:02 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 3 gostiju pregledaju ovu temu.

Problem(error/warning): Uradio sam kada ocesh da idesh na admin duty da ti daje dialog sa password(kod) koji dobivash kada ti je /makeadmin,kod sacuva u fajlove tocno kako shta je u /makeadmin upishan,ali kada upishesh kod u dialog za aon kazuje da je password greshan.Pomoc malo ako moze?
Dio skripte: [pawn]
new string[128];
format(string,sizeof(string),""BELA"Za da otidete na admin duty vnesete ja vasata lozinka:");
ShowPlayerDialog(playerid,DIALOG_AON,DIALOG_STYLE_PASSWORD,""TPLAVA" Admin Panel",string,"Login","Izlez");

//Evo dijalog.
if(dialogid == DIALOG_AON)
   {
       if(!response) return 1;
       if(response)
       {
           if(strlen(inputtext) == PlayerInfo[playerid][pALozinka])
           {
            AdminDuty[playerid] = 1;
            SetPlayerColor(playerid, RED_ZONE);
            SetPlayerArmour(playerid, 99.0);
            g_SetPlayerHealth(playerid, 99.0);
            SCM(playerid,-1,""BELA"Sega ste na dolznost! (/admini)");
            new string[128];
            format(string,sizeof(string),""CRVENA"Admin %s e sega na dolznost!", GetName(playerid));
            SCMTA(-1,string);
            format(string,sizeof(string),""TPLAVA"Duty Time | Saati: %d | Minuti: %d!",PlayerInfo[playerid][pOnDutyH],PlayerInfo[playerid][pOnDutyM]);
            AdminSupporter(-1,string);
         }
         else
         {
            new string[256];
            format(string,sizeof(string),""TPLAVA"%s proba da vleze vo admin duty,no vpisha pogreshna lozinka",GetName(playerid));
            AdminSupporter(-1,string);
         }
      }
   }
[/pawn]
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): //
Slika/video ingame problema(obavezno ako je ingame problem): //

zato sto uporedjujes duzinu lozinke sa lozinkom uporedi samo inputtext sa lozinkom pomocu strcmp ili neceg vec

Stavi strval umjesto strlen
Third-party Pawn Developer


Salesman ti je vec objasnio ali eto ako ne razumijes[pawn]
if(strlen(inputtext) == PlayerInfo[playerid][pALozinka])
[/pawn]
Sa ovim proveravas duzinu inputtexta a ne sifru.
Fix:
[pawn]
if(strval(inputtext) == PlayerInfo[playerid][pALozinka])
[/pawn]

Taj "fix" koji ste napisali će raditi samo ukoliko se admin kod sastoji isključivo od brojeva i ukoliko je promenljiva PlayerInfo[playerid][pALozinka] definisana kao integer, a ne kao string.




Progress doesn't come from early risers — progress is made by lazy men looking for easier ways to do things. - Robert A. Heinlein