[Ajuda] Mysql nгo ta salvando skin
#1

Bom, to com um fs de mysql, ai tava fazendo sistema de genero de sexo e tals no registro.
se vc selecionar mulher spawna com a skin femenina se й homem spawna com a skin masculina sу que quando desloga no servidor a skin nгo й salva e volta com a skin do cj e no banco de dados em vez de ta a id da skin ta 0

sistema abaixo parte do registro

PHP Code:
public OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    switch(
dialogid// usaremos um switch para as dialogs
    
{
        case 
DIALOG_REGISTRO:
        {
            if(!
response) return Kick(playerid); // se clicar em cancelar na dialog registro ira kickar o jogador
            
if(strlen(inputtext) < || strlen(inputtext) > 20// se a senha tiver menos de 4 ou mais de 20 caracteres ira retornar a dialog
            
{
                
SendClientMessage(playerid, -1"ERRO:{FFFFFF} A senha deve conter de 4 a 20 caracteres!");
                new 
Dialog[240]; // variavel da dialog registro
                
format(Dialogsizeof(Dialog),"{F8F8FF}Bem Vindo(a) Ao Servidor {058AFF}%s{F8F8FF}\n\nVocк nгo tem uma Conta registrada\n\nDigite uma senha para Registrar\n\nStatus: {058AFF}N/A Registrado{F8F8FF}\n\nIP: {058AFF}%s"PlayerInfo[playerid][pNome], PlayerInfo[playerid][pIP]);
                
ShowPlayerDialog(playeridDIALOG_REGISTRODIALOG_STYLE_PASSWORD"Registro"Dialog"Registrar""Cancelar");
                } else { 
// se nгo conter entre 4 e 20 caracteres ira retornar ao registro
                
new Query[100]; // variavel com 100 celulas para inserir as informaзхes de registro na tabela
                
mysql_format(IDConexaoQuerysizeof(Query), "INSERT INTO `Contas`(`Nome`, `Senha`) VALUES ('%s', '%s')"PlayerInfo[playerid][pNome], inputtext); // formatamos a query para inserir na tabela do banco de dados
                
mysql_tquery(IDConexaoQuery"DadosRegistrados""i"playerid); // fazemos a consulta e enviamos o resultado para a callback DadosRegistrados
                // enviamos para a callback DadosRegistrados para fazer uma especia de  DEBUG, e tambem para darmos uma ID para a conta no banco de dados
               // RegistrarDados(playerid); // chamamos a funзгo RegistrarDados para adicionar os valores nas variaveis do player
                
ShowPlayerDialog(playeridDIALOG_SEXODIALOG_STYLE_MSGBOX,"[City Of Paradise] - Sexo","Qual й seu sexo?","Masculino","Feminino");
            }
        }
            case 
DIALOG_SEXO:
        {
            if(
response)
            {
                
PlayerInfo[playerid][pSkin]=154;
                
cache_get_value_name_int(0"pSkin"PlayerInfo[playerid][pSkin]);
                
PlayerInfo[playerid][pSexo] = HOMEM;
                
PlayerInfo[playerid][pSexo] = 1;
                
cache_get_value_name_int(0"pSexo"PlayerInfo[playerid][pSkin]);
                
RegistrarDados(playerid);
                
SendClientMessage(playerid,-1,"Vocк й homem.");
            }
             else if(!
response)
            {
                
SendClientMessage(playerid,-1,"Vocк й mulher.");
                   
PlayerInfo[playerid][pSexo] = MULHER;
                
PlayerInfo[playerid][pSexo] = 2;
                
SetPlayerSkin(playerid56);
                
RegistrarDados(playerid);
            }
        
//    ShowPlayerDialog(playerid, DIALOG_IDADE, DIALOG_STYLE_INPUT,"[NomeSv] - Idade","Quantos anos vocк tem?","Pronto","");
            
return 1;
        }
        case 
DIALOG_LOGIN:
        {
            if(!
response) return Kick(playerid); // se clicar em cancelar na dialog login ira kickar o jogador
            
if(!strlen(inputtext)) // se nгo digitar nada ira retornar.
            
{
                
SendClientMessage(playerid, -1"ERRO:{FFFFFF} Vocк nгo digitou a senha !");
                
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_PASSWORD"Digite sua senha:""Digite sua senha abaixo para logar-se""Logar""Voltar");
                return 
1;
            }
            if(!
strcmp(PlayerInfo[playerid][pSenha], inputtexttrue20)) //comparamos a variavel coma senha do player com a senha digitada
            
// se a comparaзгo for correta vamos realizar a consulta para adicionar os valores contidos na tabela para as variaveis do player.
                
new Query[70];
                
mysql_format(IDConexaoQuerysizeof(Query), "SELECT * FROM `Contas` WHERE Nome='%s'"PlayerInfo[playerid][pNome]);
                
mysql_tquery(IDConexaoQuery"CarregarContas""d"playerid);
                
// Formatamos a Query realizamos a consulta e enviamos o resultado para a callback CarregarContas
                
} else {
                
// comparaзгo sem sucesso ::
                
SendClientMessage(playerid, -1"ERRO:{FFFFFF} Senha incorreta !");
                
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_PASSWORD"Digite sua senha:""Digite sua senha abaixo para logar-se""Logar""Voltar");
            }
        }
    }
    return 
1;
}
forward DadosRegistrados(playerid);
public 
DadosRegistrados(playerid)
{
    
PlayerInfo[playerid][pID] = cache_insert_id(); // Adicionamos o ID da conta do player
    
printf("-> Nova conta registrada ID: %d"PlayerInfo[playerid][pID]); // Printf no samp server para informar que a conta foi registrada com sucesso
    
return 1;

Parte de carregamento e salvamento de dados

PHP Code:
forward CarregarContas(playerid);
public 
CarregarContas(playerid)
// Resultado da consulta do login, adicionamos os valores contidos na tabela para as variaveis do player
    
cache_get_value_int(0"ID"PlayerInfo[playerid][pID]);
    
cache_get_value_int(0"Admin"PlayerInfo[playerid][pAdmin]);
    
cache_get_value_int(0"Level"PlayerInfo[playerid][pLevel]);
    
cache_get_value_int(0"Sexo"PlayerInfo[playerid][pSexo]);
    
cache_get_value_int(0"Morreu"PlayerInfo[playerid][pMorreu]);
    
cache_get_value_int(0"Skin"PlayerInfo[playerid][pSkin]);
    
cache_get_value_int(0"Dinheiro"PlayerInfo[playerid][pDinheiro]);
    
CarregarDados(playerid); // chamamos a funзгo CarregarDados
    
return 1;
}
stock RegistrarDados(playerid)
{  
//Aqui adicionaremos os valores das variaveis que o player ira inicio no servidor
    
PlayerInfo[playerid][pDinheiro] = 5000// ou seja comeзara com 5000 reais
    
PlayerInfo[playerid][pAdmin] = 0// sem nivel de admin
    
PlayerInfo[playerid][pLevel] = 1// 1 level
    //PlayerInfo[playerid][pSkin] = 0; // skin 0 CJ
    
PlayerInfo[playerid][pMorreu] = 0// ....
    
PlayerInfo[playerid][pSexo] = 0// ....
    
CarregarDados(playerid); //chamamos a funзгo CarregarDados
    
return 1;
}
stock CarregarDados(playerid)
// aqui carregaremos os ultimos dados das variaveis
    
PlayerInfo[playerid][pLogado] = true;
    
SetPlayerScore(playeridPlayerInfo[playerid][pLevel]); // setamos o level
    
GivePlayerMoney(playeridPlayerInfo[playerid][pDinheiro]); // o dinheiro
    
GetPlayerSkin(playerid);
    
SetSpawnInfo(playerid0PlayerInfo[playerid][pSkin], 1958.331343.1215.36269.15);
    
SpawnPlayer(playerid); // forзamos o player a spawnar nas cordenas acima com as infos setadas nas variaveis
    
return 1;
}
stock SalvarDados(playerid)
{
    if(
PlayerInfo[playerid][pLogado] == false) return 1// se o player nao estiver logado nгo ira salvar nada
    
PlayerInfo[playerid][pDinheiro] = GetPlayerMoney(playerid);
    new 
Query[350]; // variavel com 350 celulas para salvamento
    
mysql_format(IDConexaoQuerysizeof(Query), "UPDATE `Contas` SET `Nome`='%s', `Level`=%d, `Admin`=%d, `Skin`=%d, `Sexo`=%d, `Morreu`=%d, `Dinheiro`=%d WHERE `ID`=%d",
    
PlayerInfo[playerid][pNome],
    
PlayerInfo[playerid][pLevel],
    
PlayerInfo[playerid][pAdmin],
    
PlayerInfo[playerid][pSkin],
    
PlayerInfo[playerid][pSexo],
    
PlayerInfo[playerid][pMorreu],
    
PlayerInfo[playerid][pDinheiro],
    
PlayerInfo[playerid][pID]);
    
// formatamos a Query referente a ID da conta (WHERE `ID`=%d) e realizaremos a consulta para atualizar os dados no banco de dados
    
mysql_tquery(IDConexaoQuery"DadosSalvos","d"playerid); // consulta, e enviamos o resultado para a callback DadosSalvos para um DEBUG
    
PlayerInfo[playerid][pLevel] = 0// resetamos as variaveis.
    
PlayerInfo[playerid][pAdmin] = 0;
    
PlayerInfo[playerid][pSexo] = 0;
    
PlayerInfo[playerid][pMorreu] = 0;
    
PlayerInfo[playerid][pDinheiro] = 0;
    
PlayerInfo[playerid][pLogado] = false;
    return 
1;
}
forward DadosSalvos(playerid);
public 
DadosSalvos(playerid) return printf("-> Conta salva ID: %d"PlayerInfo[playerid][pID]); 
e sim a enum ja ta marcando pra salvar os dados ...

enum ...

PHP Code:
enum pInfo // enumerador com variaveis necessarias para nosso salvamento.
{
    
pID,
    
pNome[24],
    
pIP[26],
    
pSexo,
    
pSenha[20],
    
pLevel,
    
pDinheiro,
    
pSkin,
    
pMatou,
    
pMorreu,
    
pAdmin,
    
bool:pLogado
}; 
Obs: da pra ver que ao selecionar a opзгo masculina jб tentei fazer umas coisas la pra ve se salva e nгo tive nenhum resultado. entгo deixei a parte da femenina de lado por em quanto.
Reply


Messages In This Thread
Mysql nгo ta salvando skin - by Ryuzaki07 - 02.11.2018, 17:41
Re: Mysql nгo ta salvando skin - by PedroH - 02.11.2018, 19:40
Re: Mysql nгo ta salvando skin - by murilo2929 - 02.11.2018, 19:55
Re: Mysql nгo ta salvando skin - by PedroH - 02.11.2018, 22:12
Re: Mysql nгo ta salvando skin - by Ryuzaki07 - 02.11.2018, 23:03
Re: Mysql nгo ta salvando skin - by PedroH - 02.11.2018, 23:52
Re: Mysql nгo ta salvando skin - by Ryuzaki07 - 03.11.2018, 00:04
Re: Mysql nгo ta salvando skin - by Malandrin - 03.11.2018, 00:10
Re: Mysql nгo ta salvando skin - by PedroH - 03.11.2018, 00:11
Re: Mysql nгo ta salvando skin - by Ryuzaki07 - 03.11.2018, 00:13
Re: Mysql nгo ta salvando skin - by Ryuzaki07 - 03.11.2018, 00:15
Re: Mysql nгo ta salvando skin - by Ryuzaki07 - 03.11.2018, 00:20
Re: Mysql nгo ta salvando skin - by PedroH - 03.11.2018, 00:29
Re: Mysql nгo ta salvando skin - by Mandrack_FreeZe - 03.11.2018, 00:42
Re: Mysql nгo ta salvando skin - by Ryuzaki07 - 03.11.2018, 01:23
Re: Mysql nгo ta salvando skin - by Ryuzaki07 - 03.11.2018, 01:35
Re: Mysql nгo ta salvando skin - by Mandrack_FreeZe - 03.11.2018, 02:04
Re: Mysql nгo ta salvando skin - by Ryuzaki07 - 03.11.2018, 03:36

Forum Jump:


Users browsing this thread: 1 Guest(s)