14/03/2023 08:40 
(Esta mensagem foi modificada pela última vez a: 14/03/2023 08:41 por pushline.)
	
	
	
		o '%e' é pra string não escapar. não sei explicar direito mas é boa prática de SQL.
https://github.com/pBlueG/SA-MP-MySQL/tr...le_scripts
nesse link acima tem mais exemplos.
	
	
	
	
https://github.com/pBlueG/SA-MP-MySQL/tr...le_scripts
nesse link acima tem mais exemplos.
Código PHP:
enum e_Player{
    nickname[MAX_PLAYER_NAME + 1],
    kills,
    adminlevel,
    SQL_ID
};
new PlayerData[MAX_PLAYERS][e_Player];
new MySQL:dbHandle;
SavePlayerData(playerid)
{
    new querySave[1024], Cache:query;
    
    mysql_format(dbHandle, querySave, sizeof querySave, "UPDATE `contas` SET\
        `nickname` = '%e',\
        `kills` = '%d',\
        'adminlevel' = '%d'\
        WHERE `id`= '%d'",
        PlayerData[playerid][nickname],
        PlayerData[playerid][kills],
        PlayerData[playerid][adminlevel],
        PlayerData[playerid][SQL_ID]); // player que acabou de se registrar já terá o sql id preenchido, o que já se registrou terá de ser adicionado.
    query = mysql_query(dbHandle, querySave);
    cache_delete(query);
}
public OnPlayerDisconnect(playerid, reason)
{
    SavePlayerData(playerid);
    // ...
}
forward InsertDataSQL(playerid);
public InsertDataSQL(playerid)
{
    // isso é apenas no registro.
    // você pode pegar os dados do usuário quando ele logar usando SELECT = name
    // com ele voltando os dados, você pode setar o SQL_ID com o ID que voltou da query
    
    // new id;
    // cache_get_value_int(0, "id", id);
    // PlayerData[playerid][SQL_ID] = id;
    PlayerData[playerid][SQL_ID] = cache_insert_id();
} 

 
	   
	

