Password


Započeo toncikica, Oktobar 02, 2023, 10:26:56 PRE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Do sad su mi se sifre cuvale ko udb_hash, ali sam odlucio to sklonit, a kad sklonim, nezz kako da na dialog_login provjerim dal je inputtext njegova sifra. Pokusavo sam sa
strval(inputtext)
al ne radi kako treba, probo sam
strcmp
ne radi. Iso sam inputtext == lozinka, ne radi, kako bi trebo to uradit ?

Citat: toncikica poslato Oktobar 02, 2023, 10:26:56 PRE PODNE
Do sad su mi se sifre cuvale ko udb_hash, ali sam odlucio to sklonit, a kad sklonim, nezz kako da na dialog_login provjerim dal je inputtext njegova sifra. Pokusavo sam sa
strval(inputtext)
al ne radi kako treba, probo sam
strcmp
ne radi. Iso sam inputtext == lozinka, ne radi, kako bi trebo to uradit ?
daj code od dialog_login, eh sada nez kako si ti napravio taj dialog da li preko easydialoga ili preko običnih

static playerPassword[MAX_PLAYERS][32];

if(!strcmp(inputtext, playerPassword[playerid])
{
    //inputtext se poklapa sa playerPassword[playerid], znaci upisao je tacnu lozinku
}

Citat: ivan_script poslato Oktobar 02, 2023, 11:48:54 PRE PODNE
daj code od dialog_login, eh sada nez kako si ti napravio taj dialog da li preko easydialoga ili preko običnih
Preko obicnih OnDialogResponse

Citat: michaelstar poslato Oktobar 02, 2023, 12:26:06 POSLE PODNE
static playerPassword[MAX_PLAYERS][32];

if(!strcmp(inputtext, playerPassword[playerid])
{
    //inputtext se poklapa sa playerPassword[playerid], znaci upisao je tacnu lozinku
}

Pokusat cu

Citat: michaelstar poslato Oktobar 02, 2023, 12:26:06 POSLE PODNE
static playerPassword[MAX_PLAYERS][32];

if(!strcmp(inputtext, playerPassword[playerid])
{
    //inputtext se poklapa sa playerPassword[playerid], znaci upisao je tacnu lozinku
}

Ne radi...
Evo citav kod:
case DIALOG_LOGIN:
	    {
	        if( !response ) return Kick( playerid );
	        if( response )
	        {
	        	if( !strcmp( inputtext, PlayerInfo[ playerid ][ pLozinka ]))
	        	{
	        	    INI_ParseFile( UserPath( playerid ), "LoadUser_%s", .bExtra=true, .extra=playerid );
			        GivePlayerMoney( playerid, PlayerInfo[ playerid ][ pNovacRuka ]);
			        SetPlayerSkin( playerid, PlayerInfo[ playerid ][ pSkin ]);
			        TogglePlayerSpectating( playerid, false );
			        SetSpawnInfo( playerid, 0, 26, 397.2974, -1531.5791, 32.2734, 224.6556, 0 ,0 ,0 ,0, 0, 0 );
			        SpawnPlayer( playerid );
			        SavePlayer( playerid );
			    }
			    else
				{
				    GRESKA( playerid, "Unijeli ste pogresnu Lozinku !");
					ShowPlayerDialog( playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "{DCF04F}(LOG/REG): {FFFFFF}Login", "Unesite vasu lozinku:", "Prijavi se", "Odustani");
				}
	        }
	    }

Citat: toncikica poslato Oktobar 02, 2023, 21:18:28 POSLE PODNE
Ne radi...
Evo citav kod:
case DIALOG_LOGIN:
	    {
	        if( !response ) return Kick( playerid );
	        if( response )
	        {
	        	if( !strcmp( inputtext, PlayerInfo[ playerid ][ pLozinka ]))
	        	{
	        	    INI_ParseFile( UserPath( playerid ), "LoadUser_%s", .bExtra=true, .extra=playerid );
			        GivePlayerMoney( playerid, PlayerInfo[ playerid ][ pNovacRuka ]);
			        SetPlayerSkin( playerid, PlayerInfo[ playerid ][ pSkin ]);
			        TogglePlayerSpectating( playerid, false );
			        SetSpawnInfo( playerid, 0, 26, 397.2974, -1531.5791, 32.2734, 224.6556, 0 ,0 ,0 ,0, 0, 0 );
			        SpawnPlayer( playerid );
			        SavePlayer( playerid );
			    }
			    else
				{
				    GRESKA( playerid, "Unijeli ste pogresnu Lozinku !");
					ShowPlayerDialog( playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "{DCF04F}(LOG/REG): {FFFFFF}Login", "Unesite vasu lozinku:", "Prijavi se", "Odustani");
				}
	        }
	    }

if (!strcmp(player_Password[playerid], inputtext, false))

Probaj ovako

Citat: ivan_script poslato Oktobar 02, 2023, 21:31:48 POSLE PODNE
if (!strcmp(player_Password[playerid], inputtext, false))

Probaj ovako
brt probo sam, iso sam na net i vidio da to na kraju false znaci da se svako slovo mora poklapat( Hello != hello )
probo sam i sa true, ali nece, nezz koji mu je kurac

Daj kod svega sto se tice lozinke, definisanje, setanje lozinke, ucitavanje lozinke...

Citat: michaelstar poslato Oktobar 02, 2023, 22:12:40 POSLE PODNE
Daj kod svega sto se tice lozinke, definisanje, setanje lozinke, ucitavanje lozinke...
enum pInfo
{
	pLozinka
}

forward LoadUser_data(playerid,name[],value[]);
public LoadUser_data(playerid,name[],value[])
{
    INI_Int("Lozinka", PlayerInfo[ playerid ][ pLozinka ]);

    return 1;
}

INI_WriteInt(File, "Lozinka", strval(inputtext)); //ovo je na dialog_register

Loznika ti vise nije int tipa, dakle sad je deklarises kao string

pLozinka[32] //broj 32 ti je u zavisnosti koliko karaktera ti je maksimalna duzina sifre

Cuvas je i ucitavas kao string takodje

INI_WriteString i INI_String

Citat: michaelstar poslato Oktobar 02, 2023, 22:23:53 POSLE PODNE
Loznika ti vise nije int tipa, dakle sad je deklarises kao string

pLozinka[32] //broj 32 ti je u zavisnosti koliko karaktera ti je maksimalna duzina sifre

Cuvas je i ucitavas kao string takodje

INI_WriteString i INI_String
INI_WriteString("Lozinka", PlayerInfo[ playerid ][ pLozinka ]);

error 035: argument type mismatch (argument 1)

Ajde upali malo mozak jebo te bog, je l moram sve da ti crtam? Pogledaj malo kako se radilo sa INI_WriteString i pokusaj da primenis sam...

INI_WriteString(INI:file, name[], data[])

Citat: michaelstar poslato Oktobar 02, 2023, 22:49:09 POSLE PODNE
Ajde upali malo mozak jebo te bog, je l moram sve da ti crtam? Pogledaj malo kako se radilo sa INI_WriteString i pokusaj da primenis sam...

INI_WriteString(INI:file, name[], data[])
Rjeseno