29.11.2018, 15:20
Hi!
When i try to connect to my server,then i type the password at login (not register), my password is wrong,but the mysql data is ok.
Gamemode:
When i try to connect to my server,then i type the password at login (not register), my password is wrong,but the mysql data is ok.
Gamemode:
Код:
#include <a_samp> #include <a_mysql> #include <zcmd> //==============================Define's==============================// #define mysql_host "127.0.0.1" #define mysql_db "pear" #define mysql_user "root" #define mysql_pass "" #define COLOR_YELLOW 0xFFFF00AA //==============================Enum's==============================// enum { DIALOG_LOGIN, DIALOG_REGISTER, DIALOG_UNUSED }; enum pInfo { pPass, pID, pSkin, pAdmin, pCash, pLevel }; //==============================New==============================// new PlayerInfo[MAX_PLAYERS][pInfo]; new handle; //==============================Forward==============================// forward MySQLConnect(); forward OnPlayerLogin(playerid); forward OnLogin(playerid); //==============================MAIN==================================// main() { print("GameMode Pear incarcat..."); } //==============================Public==============================// public MySQLConnect() { handle = mysql_connect(mysql_host, mysql_user, mysql_db, mysql_pass); if(mysql_errno() != 0) { printf("Conexiunea la baza de date %s a esuat ---> Server Inchis ~~~", mysql_db); SendRconCommand("exit"); } else { printf("Conexiunea la baza de date '%s' cu user-ul '%s' a reusit!!!", mysql_db, mysql_user); } return 1; } public OnGameModeInit() { MySQLConnect(); SetGameModeText("Pear 0.1"); print("Serverul se incarca!"); return 1; } public OnGameModeExit() { mysql_close(handle); return 1; } public OnPlayerConnect(playerid) { PlayerInfo[playerid][pID] = 0; PlayerInfo[playerid][pSkin] = 0; PlayerInfo[playerid][pAdmin] = 0; PlayerInfo[playerid][pCash] = 0; PlayerInfo[playerid][pLevel] = 0; new query[100]; mysql_format(handle, query, sizeof(query), "SELECT * FROM conturi WHERE Nume = '%s'", GetName(playerid)); mysql_tquery(handle, query, "OnPlayerLogin", "i", playerid); return 1; } public OnPlayerLogin(playerid) { new rows, fields, stringul[128]; cache_get_data(rows, fields); if(rows) { format(stringul, 128, "%s,bine ai venit inapoi pe serverul Pear!", GetName(playerid)); SendClientMessage(playerid, COLOR_YELLOW, stringul); ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Logheaza-te!", "{daf94d}Te rog sa-ti introduci parola contului mai jos!", "Logare", "Iesire"); } else { format(stringul, 128, "%s,bine ai venit pe serverul Pear!", GetName(playerid)); SendClientMessage(playerid, COLOR_YELLOW, stringul); ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Inregistrare", "{daf94d}Trebuie sa iti creezi un cont ca sa joci pe server. \n{daf94d}Tasteaza mai jos o parola, pentru a te inregistra!", "Inregistreaza", "Iesire"); } return 1; } public OnLogin(playerid) { new rows, fields,temporar[200]; cache_get_data(rows, fields); if(rows) { PlayerInfo[playerid][pPass] = cache_get_field_content(0, "Parola",temporar); PlayerInfo[playerid][pID] = cache_get_field_content_int(0, "ID"); PlayerInfo[playerid][pSkin] = cache_get_field_content_int(0, "Skin"); PlayerInfo[playerid][pAdmin] = cache_get_field_content_int(0, "Admin"); PlayerInfo[playerid][pCash] = cache_get_field_content_int(0, "Bani"); PlayerInfo[playerid][pLevel] = cache_get_field_content_int(0, "Nivel"); SpawnPlayer(playerid); } else { ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Parola incorecta!", "{daf94d}Te rog sa iti introduci parola corecta, pentru a te loga pe server.", "Logare", "Iesire"); } return 1; } public OnPlayerSpawn(playerid) { new strlevel[15]; format(strlevel, 15, "Nivel: %d", PlayerInfo[playerid][pLevel]); new Text3D:label = Create3DTextLabel(strlevel, 0x00FF00FF, 30.0, 40.0, 50.0, 40.0, 0); Attach3DTextLabelToPlayer(label, playerid, 0.0, 0.0, 0.7); SetPlayerPos(playerid, 1479.6548, -1725.2207, 13.5469); SetPlayerInterior(playerid,0); SetPlayerVirtualWorld(playerid, 0); SetPlayerSkinEx(playerid, PlayerInfo[playerid][pSkin]); SetPlayerMoney(playerid, PlayerInfo[playerid][pCash]); return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { new query[128], ip[25]; switch(dialogid) { case DIALOG_REGISTER: { if(!response) return Kick(playerid); if(response) { if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Parola incorecta!", "{daf94d}Introdu-ti o parola pentru a te inregistra pe server!", "Inregistreaza", "Iesire"); GetPlayerIp(playerid, ip, sizeof(ip)); mysql_format(handle, query, sizeof(query), "INSERT INTO conturi (Nume, Parola, IP, Bani, Nivel) VALUES ('%s', '%s', '%s')", GetName(playerid), inputtext, ip); SetPlayerMoney(playerid, 50); PlayerInfo[playerid][pLevel] = 1; SetPlayerSkinEx(playerid, 170); mysql_query(handle, query); ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Logheaza-te!", "{daf94d}Te rog sa-ti introduci parola contului mai jos!", "Logare", "Iesire"); } return 1; } case DIALOG_LOGIN: { if(!response) return Kick(playerid); if(response) { if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Parola incorecta!", "{daf94d}Te rog sa iti introduci parola corecta, pentru a te loga pe server.", "Logare", "Iesire"); mysql_format(handle, query, sizeof(query), "SELECT * FROM conturi WHERE Parola = '%e' LIMIT 0,1", inputtext); mysql_tquery(handle, query, "OnLogin", "i", playerid); } return 1; } case DIALOG_UNUSED: { if(response) { return 1; } } } return 1; } //==============================Stock==============================// stock GetName(playerid) { new Name[MAX_PLAYER_NAME]; GetPlayerName(playerid, Name, sizeof(Name)); return Name; } stock SetPlayerMoney(playerid,money) { ResetPlayerMoney (playerid); GivePlayerMoney (playerid,money); PlayerInfo[playerid][pCash] = money; } stock SetPlayerSkinEx(playerid,skin) { PlayerInfo[playerid][pSkin] = skin; SetPlayerSkin(playerid, skin); } //==============================Comenzi==============================// CMD:help(playerid, params[]) { new srdialog[500]; format(srdialog, 500, "{50f442}/Help - Afiseaza lista comenzilor,\n"); format(srdialog, 500, "%s{50f442}/Stats - Afiseaza statusurile tale.",srdialog); ShowPlayerDialog(playerid, DIALOG_UNUSED, DIALOG_STYLE_MSGBOX, "Comenzi", srdialog, "Ok", ""); return 1; } CMD:stats(playerid, params[]) { new srdialog[500]; format(srdialog, 500, "{fffa00}Nume\t%s [%d]\n", GetName(playerid), playerid); format(srdialog, 500, "%s{fffa00}Bani\t%d de lei",srdialog, PlayerInfo[playerid][pCash]); ShowPlayerDialog(playerid, DIALOG_UNUSED, DIALOG_STYLE_MSGBOX, "Status", srdialog, "Ok", ""); return 1; }