-
sziasztok!
Ha beakarok lépni,akkor minden jelszót elfogad.
new jelszo = dini_Int(file, \"Jelszó\");
if(udb_hash(inputtext) != jelszo)
{
már annyiszor találkoztam ezzel a problémával de egy idõ után mindig elõjött.
-
nálam akkor jelent meg hasonló probléma amikor 2 stringbõl az egyiknek nem volt semmi értéke...
nálad úgy látom szám adatok vannak...próbáld ki print-el vagy SendClientMessage-el megnézni a 2 értéket és talán megtalálod a hiba okát...
-
nálam akkor jelent meg hasonló probléma amikor 2 stringbõl az egyiknek nem volt semmi értéke...
nálad úgy látom szám adatok vannak...próbáld ki print-el vagy SendClientMessage-el megnézni a 2 értéket és talán megtalálod a hiba okát...
vagy nem elég a string kiírása nem elég a string mérete.
-
strcmp, és strlen kell neked
és persze a teljes jelszó, amit nem \'dini_Int\' függvénnyel kérsz be.
-
akkor ugy tûnik nem nagyon érted a kódot amit írtál :S mivel ezek egyáltalán nem szám adatok lennének hanem stringek...akkor most próbáld meg a string függvényekkel :) és írd le az eredményt
-
Te nem érted.udb_hash = kódolás.
Amikor regisztrál a játékos már eleve a kódot menti el.És késõbb ezt ellenõrzi le.
Ui.: rájöttem,hogy már ott a hiba,hogy 0-t ír a Jelszo sor értékének.
Miért?
format(file,sizeof(file),\"/Adatbazis/Karakterek/%s.ini\",nev);
if(!fexist(file))
{
dini_Create(file);
dini_IntSet(file, \"Antibug\",0);
dini_IntSet(file, \"Jelszo\",udb_hash(inputtext));
-
és a jelszó az számadat? vagy szöveg? mert szerintem szöveg akar lenni...és ha szöveg akkor string függvényekkel kéne ellenõrizned az egyezést...
http://wiki.sa-mp.com/wiki/Strcmp
-
a hash kód az számkombinációvá alakítja a jelszót.
-
Az udb_hash valójában stringet vagy integert ad vissza?
Mert attól én még kiírom stringbe a számot...
Ugyanis integert stringgel nem fogsz összevetni mûködõen soha.
Esetleg
if(strval(udb_hash(inputtext)) != jelszo)
?
Persze csak ha stringet ad vissza.
-
Az udb_hash(inputtext) egy integer.Egy kb 30 számból álló számkombináció.
Na mindegy. Írna valaki kérem,egy mûködõ,jelszó ellenõrzõ if-et?
Köszönöm :D
-
Talán ez?
if(udb_hash(inputtext) == jelszo)
-
Ha esetleg nem jó a kód...
Be tudnád másolni a teljes regisztrációt?
Illetve ha jól sejtem, ez az OnPlayerText publicban van?
-
A belépés és a regisztráció az OnPlayerDialogResponse-ban vannak.Ha \"==\"-t írok akkor meg a normál jelszót sem fogadja el.
-
Probald meg egy
printf(“%s“, jelszo);
-
na szerintem meg van a hiba...
Login:
new jelszo = dini_Int(file, \"Jelszó\");
Reg:
dini_IntSet(file, \"Jelszo\",udb_hash(inputtext));
jó lenne ha mind2 esetben ugyanazt a nevet használnád :D mert szerintem az o és ó között különbséget tesz :)
-
Na neeeee xd
Remélem tényleg csak ennyi a hiba.Köszi. (Figyelmetlenség level 1000000000)
Probald meg egy
printf(“%s“, jelszo);
mondom,hogy nem string.
Dupla hozzászólás automatikusan összefûzve. ( 2012. október 05. - 15:50:27 )
Ha minden igaz jelenleg jó :D
Köszönöm a segítséget. +1