Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2015-01-06, 13:54


Loghain







Wiek: 29
Na forum: 4506 dni
Posty: 51

Piwa: 1

Respekt: 50

Mam problem z logowaniem w moim systemie rejestracji. Ot?? wed?ug niego ka?de has?o jest poprawne, za???my ?e za?o?? konto na ha?le "12345" a jak podczas logowania wpisz? "x" to zaloguje go normalnie ;/
Nie wiem czemu tak jest, m?j system opiera si? na dini.

Kod:
Kod:


#include <a_samp>
#include <md5>
#include <Dini>

#define LOGIN 1
#define REGISTER 1
new LoginCount[MAX_PLAYERS];

public OnPlayerConnect(playerid){
new Nick [30]; //rejestracja
new Gname[MAX_PLAYER_NAME]; //rejestracja
GetPlayerName(playerid,Gname,sizeof(Gname)); //rejestracja
format(Nick,sizeof(Nick),"/Gracze/%s.txt",Gname); //rejestracja
if(dini_Exists(Nick)){ //rejestracja
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD," ===== [PL] Polish Ghost Truck [PGT] =====","Witamy ponownie na serwerze [PGT], aby sie zalogowac wpisz\n\t haslo ktore podales podczas rejestracji.","Login","Anuluj"); //rejestracja
}else{ //rejestracja
ShowPlayerDialog(playerid, REGISTER, DIALOG_STYLE_PASSWORD," ===== [PL] Polish Ghost Truck [PGT] =====","Witamy po raz pierwszy na serwerze [PGT], aby sie zarejestrowac\n\t\t wprowadz haslo ponizej.\n\t Uzyj takiego hasla ktore zapamietasz !! !","Rejestracja","Anuluj"); //rejestracja
} //rejestracja
return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
ZapisGracza(playerid); //rejestracja
LoginCount[playerid] = 0; //rejestracja
return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == REGISTER){ //rejestracja
if(response == 0){ //rejestracja
SendClientMessage(playerid, Czerwony,"Anulowales/as rejestracje"); //rejestracja
Kick(playerid); //rejestracja
} //rejestracja
if(response == 1){ //rejestracja
if(!strlen(inputtext)){ //rejestracja
ShowPlayerDialog(playerid, REGISTER, DIALOG_STYLE_PASSWORD," ===== [PL] Polish Ghost Truck [PGT] =====","Witamy po raz pierwszy na serwerze [PGT], aby sie zarejestrowac\n\t\t wprowadz haslo ponizej.\n\t Uzyj takiego hasla ktore zapamietasz !! !","Rejestracja","Anuluj"); //rejestracja
} //rejestracja
Rejestruj(playerid,MD5_Hash(inputtext)); //rejestracja
} //rejestracja
} //rejestracja
if(dialogid == LOGIN){ //logowanie
if(response == 0){ //pierwszy przycisk
SendClientMessage(playerid, Czerwony,"Anulowales/as logowanie"); //rejestracja
Kick(playerid);
return 1;
}
if(response == 1){ //rejestracja
if(!strlen(inputtext)){ //rejestracja
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD," ===== [PL] Polish Ghost Truck [PGT] =====","Witamy ponownie na serwerze [PGT], aby sie zalogowac wpisz\n\t haslo ktore podales podczas rejestracji.","Login","Anuluj"); //rejestracja
} //rejestracja
Login(playerid,MD5_Hash(inputtext)); //rejestracja
} //rejestracja
} //rejestracja
return 1;
}

stock Rejestruj(playerid,key[])
{
new Nick [30];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid,Gname,sizeof(Gname));
format(Nick,sizeof(Nick),"/Gracze/%s.txt",Gname);
dini_Create(Nick);
dini_Set(Nick,"Haslo",key);
dini_IntSet(Nick,"Kasa",1000);
dini_IntSet(Nick,"Score",0);
return 1;
}

stock Login(playerid, key[])
{
if(LoginCount[playerid] == 3){
Kick(playerid);
return 1;
}
new Nick [30];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid,Gname,sizeof(Gname));
format(Nick,sizeof(Nick),"/Gracze/%s.txt",Gname);
if(!strcmp(key,dini_Get(Nick,"Haslo"), true)){
WczytajGracza(playerid);
}else{
LoginCount[playerid]++;
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD,"Login","Zle haslo","Login","Anuluj");
}
return 1;
}

stock WczytajGracza(playerid)
{
new Nick [30];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid,Gname,sizeof(Gname));
format(Nick,sizeof(Nick),"/Gracze/%s.txt",Gname);
if(dini_Exists(Nick)){
GivePlayerMoney(playerid, dini_Int(Nick,"Kasa"));
SetPlayerScore(playerid, dini_Int(Nick,"Score"));
}
return 1;
}

stock ZapisGracza(playerid)
{
new Nick [30];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid,Gname,sizeof(Gname));
format(Nick,sizeof(Nick),"/Gracze/%s.txt",Gname);
if(dini_Exists(Nick)){
dini_IntSet(Nick,"Kasa",GetPlayerMoney(playerid));
dini_IntSet(Nick,"Score",GetPlayerScore(playerid));
}
}


Prosz? o pomoc, bo pr?bowa?em ju? wszystkiego, m?czy?em si? ca?y dzie? a i tak nic nie daje. Nie jestem zbyt dobry w te klocki ;/

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-01-06, 14:49


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-01-06, 16:32


Loghain







Wiek: 29
Na forum: 4506 dni
Posty: 51

Piwa: 1

Respekt: 50

Nadal nic, a teraz dosz?o do tego ?e jak nic nie wpisz? podczas rejestracji to i tak zarejestruje ;/

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-01-10, 15:18


Sillence







Wiek: 26
Na forum: 5157 dni
Posty: 1514
Nick w MP: Sillence

Piwa: 1517

Respekt: 416,3
Respekt: 416,3

Loghain, Musisz sprawdzi? czy gracz wpisuje jaki? tekst w GUI za pomoc?: strlen

Postaw piwo autorowi tego posta
 

 
Tagi: system :: rejestracji
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN » [INNE] System rejestracji Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku