#include #include new MySQL:m_sql; new samp[500]; main(){} public OnGameModeInit() { if(!MySQL_Init()) return printf("[MySQL] Error while trying to connect with database. [ID: %d].", mysql_errno(m_sql)); else print("[MySQL] Successfully connected to the database."); return 1; } public OnPlayerConnect(playerid) { mysql_format(m_sql, samp, sizeof(samp), "SELECT * FROM `players` WHERE `player_name` LIKE BINARY '%s'", GetPlayerNick(playerid)); mysql_query(m_sql, samp, true); new rows = cache_num_rows(); if(rows) { format(samp, sizeof(samp), "Witaj na serwerze %s.nnWpisz swoje haslo aby sie zalogowac", GetPlayerNick(playerid)); ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, "Logowanie", samp, "Wyjdz", "zaloguj"); } else { format(samp, sizeof(samp), "Witaj na serwerze %s.nnWpisz swoje haslo aby sie ZAREJESTROWAC", GetPlayerNick(playerid)); ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, "REJESTRACJA", samp, "Wyjdz", "REJESTRUJ"); } return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 2) { if(response == 1) { mysql_format(m_sql, samp, sizeof(samp), "SELECT `player_password` FROM `players` WHERE `player_name` LIKE BINARY '%s'", GetPlayerNick(playerid)); mysql_query(m_sql, samp, true); new haslo[25]; cache_get_value_name(0, "haslo", haslo); if(strcmp(haslo, inputtext)) { ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, "Niepoprawne", "niepoprawne haslo", "loguj", "wyjc"); return 1; } TogglePlayerSpectating(playerid, 0); SpawnPlayer(playerid); } else { Kick(playerid); } } if(dialogid == 1) { if(response == 1) { if(strlen(inputtext) <= 2 || strlen(inputtext) >= 21) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, "REJESTRACJA", "rejestracja", "rejestruj", "wyjc"); mysql_format(m_sql, samp, sizeof(samp), "INSERT INTO `players` SET `player_name` = '%s', `player_password` = '%s'", GetPlayerNick(playerid), inputtext); mysql_query(m_sql, samp, true); TogglePlayerSpectating(playerid, 0); SpawnPlayer(playerid); } else { Kick(playerid); } return 1; } return 1; } stock MySQL_Init() { mysql_log(); m_sql = mysql_connect_file("mysql.ini"); if(m_sql == MYSQL_INVALID_HANDLE || mysql_errno(m_sql) != 0) return false; else return true; } stock GetPlayerNick(playerid) { new name[MAX_PLAYER_NAME+1]; GetPlayerName(playerid, name, sizeof(name)); return name; }