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

Wysłany: 2017-02-21, 22:50


Nors

Wszystko wiem.






Wiek: 30
Na forum: 4600 dni
Posty: 223
Nick w MP: Nors

Piwa: 10

Respekt: 50

Witam, w jaki spos?b mog? zrobi?, aby po wpisaniu has?a do Dialogu, serwer sprawdza?, czy wpisane has?o jest zgodne z baz? danych, czy wgl co? wpisa??

Prosz? o pomoc.

:piwo: :piwo:

Podpis
Daj piweczko. Pić się chce.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-02-21, 23:11


borsuk







Wiek: 17
Na forum: 3547 dni
Posty: 468

Piwa: 15622

Respekt: 412
Respekt: 412

Ostrzeżeń: 80%
Dini i mysql tak samo
Pawn

new stra[256];
format(stra256"%s"dini_Get... Lub MySQL);
if(strlen(inputtext) == 0) return ShowPlayerDialog...//Pokazujesz ponownie dialog (?le wpisa?)
if(strcmp(inputtextstra)) // to jest ?e poprawnie wpisa? 
{
      //Co ma si? robi? gdy dobrze wpisze
      // Np.
      SendClientMessage(playerid, -1"Zalogowano poprawnie");
}
else ShowPlayerDialog...//Pokazujesz ponownie dialog (?le wpisa?)

Je?li masz b??dy to pisz bo jestem na telku nie mog? sprawdzi?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-02-21, 23:20


Nors

Wszystko wiem.






Wiek: 30
Na forum: 4600 dni
Posty: 223
Nick w MP: Nors

Piwa: 10

Respekt: 50

Ziomalloo,

Kod:


new stra[256];
format(stra, 256, "%s", PlayerCache[playerid][pHaslo]);
if(strcmp(inputtext, stra))
{
LoadStats(playerid);
}


w ten spos?b?

Podpis
Daj piweczko. Pić się chce.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-02-21, 23:21


borsuk







Wiek: 17
Na forum: 3547 dni
Posty: 468

Piwa: 15622

Respekt: 412
Respekt: 412

Ostrzeżeń: 80%
Sory ale nie znam si? na Enumach
Nigdy tego nie potrzebowalem ale wydaje si? ?e tak

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-02-21, 23:22


Steve







Wiek: 26
Na forum: 5003 dni
Posty: 18
Nick w MP: Kamcio

Piwa: 110

Respekt: 70

Kod:

new dlugosc_hasla = strval(inputtext); // pobieramy do zmiennej dlugosc hasla
if(dlugosc_hasla >= 3) // sprawdzamy czy haslo ma wiecej znakow niz 3
{
new nick[24], query[256], haslo[65]; // ogolem polecam to dac na gore mapy i przy wchodzeniu pobierac nazwe gracza
GetPlayerName(playerid, nick, MAX_PLAYER_NAME);
mysql_real_escape_string(inputtext, inputtext); // sprawdzamy czy haslo nie zaszkodzi bazy danych
mysql_real_escape_string(nick, nick); // to samo tylko ze nick
format(query, 256, "SELECT haslo FROM gracze WHERE nick = '%s'", nick); // format zapytania
mysql_query(query); // wykonujemy zapytanie
mysql_store_result(); // pobieramy wynik
if(mysql_fetch_row(query, "|")) // wstawiamy wynik do |
{
sscanf(query, "p<|>s[65]", haslo); // rozdzielamy do zmiennej
}
mysql_free_result(); // czyscimy pamiec
if(!strcmp(inputtext, haslo)) // sprawdzamy czy haslo wpisane jest zgodne z baza
{//dobre haslo
//kod
}
else
{//zle haslo
//kod
}


Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-02-21, 23:22


borsuk







Wiek: 17
Na forum: 3547 dni
Posty: 468

Piwa: 15622

Respekt: 412
Respekt: 412

Ostrzeżeń: 80%
A i w poprzednim po?cie masz poprawione zrob jeszcze raz ;)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-02-21, 23:36


Nors

Wszystko wiem.






Wiek: 30
Na forum: 4600 dni
Posty: 223
Nick w MP: Nors

Piwa: 10

Respekt: 50

Steve, Mam tak:

Kod:


new dlugosc_hasla = strval(inputtext); // pobieramy do zmiennej dlugosc hasla
if(dlugosc_hasla >= 3) // sprawdzamy czy haslo ma wiecej znakow niz 3
{
new nick[24], query[256], haslo[65]; // ogolem polecam to dac na gore mapy i przy wchodzeniu pobierac nazwe gracza
GetPlayerName(playerid, nick, MAX_PLAYER_NAME);
mysql_real_escape_string(inputtext, inputtext);
mysql_real_escape_string(nick, nick);
format(query, 256, "SELECT haslo FROM members WHERE name = '%s'", nick); // format zapytania
mysql_query(query); // wykonujemy zapytanie
mysql_store_result(); // pobieramy wynik
if(mysql_fetch_row(query, "|")) // wstawiamy wynik do |
{
sscanf(query, "p<|>s[30]", haslo); // rozdzielamy do zmiennej
}
mysql_free_result(); // czyscimy pamiec
if(!strcmp(inputtext, haslo)) // sprawdzamy czy haslo wpisane jest zgodne z baza
{
GivePlayerMoney(playerid, PlayerCache[playerid][pCash]);
SetPlayerHealth(playerid, PlayerCache[playerid][pHealth]);
SetPlayerArmour(playerid, PlayerCache[playerid][pArmor]);
SetPlayerSkin(playerid, PlayerCache[playerid][pSkin]);
SetSpawnInfo(playerid, 0, PlayerCache[playerid][pSkin], PlayerCache[playerid][pPosX], PlayerCache[playerid][pPosY], PlayerCache[playerid][pPosZ], 0.0, 0, 0, 0, 0, 0, 0);
SetPlayerPos(playerid, PlayerCache[playerid][pPosX], PlayerCache[playerid][pPosY], PlayerCache[playerid][pPosZ]);
SpawnPlayer(playerid);
}
else
{
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "Logowanie", "Wpisales zle haslo! Wpisz swoje haslo aby sie zalogowac:", "Zaloguj", "Anuluj");
}
}


i nawet gdy wpisze litere S to mnie spawnuje

Podpis
Daj piweczko. Pić się chce.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-02-21, 23:42


Steve







Wiek: 26
Na forum: 5003 dni
Posty: 18
Nick w MP: Kamcio

Piwa: 110

Respekt: 70

Kod:



new dlugosc_hasla = strval(inputtext); // pobieramy do zmiennej dlugosc hasla
if(dlugosc_hasla >= 3) // sprawdzamy czy haslo ma wiecej znakow niz 3
{
new nick[24], query[256], haslo[65]; // ogolem polecam to dac na gore mapy i przy wchodzeniu pobierac nazwe gracza
GetPlayerName(playerid, nick, MAX_PLAYER_NAME);
mysql_real_escape_string(inputtext, inputtext);
mysql_real_escape_string(nick, nick);
format(query, 256, "SELECT haslo FROM members WHERE name = '%s'", nick); // format zapytania
mysql_query(query); // wykonujemy zapytanie
mysql_store_result(); // pobieramy wynik
if(mysql_fetch_row(query, "|")) // wstawiamy wynik do |
{
sscanf(query, "p<|>s[30]", haslo); // rozdzielamy do zmiennej
}
mysql_free_result(); // czyscimy pamiec
if(!strcmp(inputtext, haslo)) // sprawdzamy czy haslo wpisane jest zgodne z baza
{
GivePlayerMoney(playerid, PlayerCache[playerid][pCash]);
SetPlayerHealth(playerid, PlayerCache[playerid][pHealth]);
SetPlayerArmour(playerid, PlayerCache[playerid][pArmor]);
SetPlayerSkin(playerid, PlayerCache[playerid][pSkin]);
SetSpawnInfo(playerid, 0, PlayerCache[playerid][pSkin], PlayerCache[playerid][pPosX], PlayerCache[playerid][pPosY], PlayerCache[playerid][pPosZ], 0.0, 0, 0, 0, 0, 0, 0);
SetPlayerPos(playerid, PlayerCache[playerid][pPosX], PlayerCache[playerid][pPosY], PlayerCache[playerid][pPosZ]);
SpawnPlayer(playerid);
}
else
{
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "Logowanie", "Wpisales zle haslo! Wpisz swoje haslo aby sie zalogowac:", "Zaloguj", "Anuluj");
}
}
else
{
//co ma sie stac jesli haslo jest zbyt krotkie
}

Spr?buj tak

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-02-21, 23:45


Nors

Wszystko wiem.






Wiek: 30
Na forum: 4600 dni
Posty: 223
Nick w MP: Nors

Piwa: 10

Respekt: 50

Steve,


Kod:


new dlugosc_hasla = strval(inputtext); // pobieramy do zmiennej dlugosc hasla
if(dlugosc_hasla >= 3) // sprawdzamy czy haslo ma wiecej znakow niz 3
{
new nick[24], query[256], haslo[30]; // ogolem polecam to dac na gore mapy i przy wchodzeniu pobierac nazwe gracza
GetPlayerName(playerid, nick, MAX_PLAYER_NAME);
mysql_real_escape_string(inputtext, inputtext);
mysql_real_escape_string(nick, nick);
format(query, 256, "SELECT haslo FROM members WHERE name = '%s'", nick); // format zapytania
mysql_query(query); // wykonujemy zapytanie
mysql_store_result(); // pobieramy wynik
if(mysql_fetch_row(query, "|")) // wstawiamy wynik do |
{
sscanf(query, "p<|>s[30]", haslo); // rozdzielamy do zmiennej
}
mysql_free_result(); // czyscimy pamiec
if(!strcmp(inputtext, haslo)) // sprawdzamy czy haslo wpisane jest zgodne z baza
{
GivePlayerMoney(playerid, PlayerCache[playerid][pCash]);
SetPlayerHealth(playerid, PlayerCache[playerid][pHealth]);
SetPlayerArmour(playerid, PlayerCache[playerid][pArmor]);
SetPlayerSkin(playerid, PlayerCache[playerid][pSkin]);
SetSpawnInfo(playerid, 0, PlayerCache[playerid][pSkin], PlayerCache[playerid][pPosX], PlayerCache[playerid][pPosY], PlayerCache[playerid][pPosZ], 0.0, 0, 0, 0, 0, 0, 0);
SetPlayerPos(playerid, PlayerCache[playerid][pPosX], PlayerCache[playerid][pPosY], PlayerCache[playerid][pPosZ]);
SpawnPlayer(playerid);
}
else
{
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "Logowanie", "Wpisales zle haslo! Wpisz swoje haslo aby sie zalogowac:", "Zaloguj", "Anuluj");
}
}
else
{
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "Logowanie", "Twoje haslo jest za krotkie! Wpisz swoje haslo aby sie zalogowac:", "Zaloguj", "Anuluj");
}


mam tak , i nawet jak prawid?owe wpisze, to pokazuje ze za kr?tkie

Podpis
Daj piweczko. Pić się chce.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-02-21, 23:47


Steve







Wiek: 26
Na forum: 5003 dni
Posty: 18
Nick w MP: Kamcio

Piwa: 110

Respekt: 70

Jezu jaki b??d zrobi?em..
Zamiast
Kod:

new dlugosc_hasla = strval(inputtext);

Daj
Kod:

new dlugosc_hasla = strlen(inputtext);


Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
Nors
Wysłany: 2017-02-21, 23:50


Nors

Wszystko wiem.






Wiek: 30
Na forum: 4600 dni
Posty: 223
Nick w MP: Nors

Piwa: 10

Respekt: 50

Steve, I najlepszym si? zdarza. Elegancko ?miga, masz piwko +rep. Dzi?ki wielkie za pomoc. Dobrej nocy :mrgreen:

Podpis
Daj piweczko. Pić się chce.
Postaw piwo autorowi tego posta
 

 
Tagi: dialog :: logowania
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN » Dialog logowania 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