SA-MP Forums

Go Back   SA-MP Forums > Non-English > Languages > Português/Portuguese

Reply
 
Thread Tools Display Modes
Old 23/05/2020, 09:56 PM   #1
l3eksz
Huge Clucker
 
l3eksz's Avatar
 
Join Date: Nov 2018
Location: Liepajas - Latvia
Posts: 204
Reputation: 2
Default MySQL não salvando

Então, nunca pensei que eu ia voltar aqui para pedir ajuda, mas é.
Então, meu gamemode ele resolveu simplesmente parar de salvar os dados do player quando ele sai, os dados só são salvos quando eu dou gmx no servidor, sendo que antes estava funcionando.
No meu servidor eu uso uma variável para verificar se o player está logado, justamente para não ocorrer bugs com a conta do mesmo. Abaixo vai o código


Código que salva a conta.
PHP Code:
stock UPWARD_SAVE_DATA(playerid)
{
    new 
Query[2056];
    
DATA_INFO[playerid][DATA_INTERIOR] = GetPlayerInterior(playerid);
    
DATA_INFO[playerid][DATA_SKIN] = GetPlayerSkin(playerid);
    
GetPlayerPos(playeridDATA_INFO[playerid][DATA_POSX], DATA_INFO[playerid][DATA_POSY], DATA_INFO[playerid][DATA_POSZ]);
    
GetPlayerFacingAngle(playeridDATA_INFO[playerid][DATA_POSA]);
    
GetPlayerArmour(playeridDATA_INFO[playerid][DATA_ARMOUR]);
    
GetPlayerHealth(playeridDATA_INFO[playerid][DATA_HEALTH]);
    
GetPlayerWeaponData(playerid1DATA_INFO[playerid][DATA_W5], DATA_INFO[playerid][DATA_A5]);
    
GetPlayerWeaponData(playerid2DATA_INFO[playerid][DATA_W1], DATA_INFO[playerid][DATA_A1]);
    
GetPlayerWeaponData(playerid3DATA_INFO[playerid][DATA_W2], DATA_INFO[playerid][DATA_A2]);
    
GetPlayerWeaponData(playerid4DATA_INFO[playerid][DATA_W3], DATA_INFO[playerid][DATA_A3]);
    
GetPlayerWeaponData(playerid5DATA_INFO[playerid][DATA_W4], DATA_INFO[playerid][DATA_A4]);
    
mysql_format(UpwardQuerysizeof(Query), "UPDATE `chars` SET `admin` = '%i', \
    `cash` = '%i', \
    `banned` = '%i', \
    `job` = '%i', \
    `faction` = '%i', \
    `level` = '%i', \
    `score` = '%i', \
    `cellphone` = '%i', \
    `boombox` = '%i', \
    `cigar` = '%i', \
    `lsd` = '%i', \
    `cocaine` = '%i', \
    `marijuana` = '%i', \
    `metanphetamine` = '%i', \
    `interior` = '%i', \
    `skin` = '%i', \
    `jailed` = '%i', \
    `jailtime` = '%i', \
    `posx` = '%f', \
    `posy` = '%f', \
    `posz` = '%f', \
    `posa` = '%f', \
    `license` = '%i', \
    `wlicense` = '%i', \
    `health` = '%f', \
    `weapon1` = '%i', \
    `weapon2` = '%i', \
    `weapon3` = '%i', \
    `weapon4` = '%i', \
    `weapon5` = '%i', \
    `ammo1` = '%i', \
    `ammo2` = '%i', \
    `ammo3` = '%i', \
    `ammo4` = '%i', \
    `ammo5` = '%i', \
    `hasveh` = '%i', \
    `buyedh` = '%i', \
    `fs` = '%i', \
    `bank` = '%i', \
    `wanted` = '%i', \
    `armour` = '%f' \
    WHERE `username` = '%e'"

    
DATA_INFO[playerid][DATA_ADMIN], 
    
DATA_INFO[playerid][DATA_CASH], 
    
DATA_INFO[playerid][DATA_BANNED], 
    
DATA_INFO[playerid][DATA_JOB], 
    
DATA_INFO[playerid][DATA_FACTION],
    
DATA_INFO[playerid][DATA_LEVEL],
    
DATA_INFO[playerid][DATA_SCORE],
    
DATA_INFO[playerid][DATA_HASCELLPHONE],
    
DATA_INFO[playerid][DATA_HASBOOMBOX],
    
DATA_INFO[playerid][DATA_HASCIGAR],
     
DATA_INFO[playerid][DATA_LSD], 
     
DATA_INFO[playerid][DATA_COCAINE], 
     
DATA_INFO[playerid][DATA_MARIJUANA], 
     
DATA_INFO[playerid][DATA_METANPHETAMINE], 
     
DATA_INFO[playerid][DATA_INTERIOR],
    
DATA_INFO[playerid][DATA_SKIN], 
    
DATA_INFO[playerid][DATA_JAILED], 
    
DATA_INFO[playerid][DATA_JAILTIME], 
    
DATA_INFO[playerid][DATA_POSX], 
    
DATA_INFO[playerid][DATA_POSY], 
    
DATA_INFO[playerid][DATA_POSZ],
    
DATA_INFO[playerid][DATA_POSA],  
    
DATA_INFO[playerid][DATA_LICENSE], 
    
DATA_INFO[playerid][DATA_WLICENSE], 
    
DATA_INFO[playerid][DATA_HEALTH],
    
DATA_INFO[playerid][DATA_W1], 
    
DATA_INFO[playerid][DATA_W2],
    
DATA_INFO[playerid][DATA_W3],
    
DATA_INFO[playerid][DATA_W4],
    
DATA_INFO[playerid][DATA_W5],
    
DATA_INFO[playerid][DATA_A1],
    
DATA_INFO[playerid][DATA_A2],
    
DATA_INFO[playerid][DATA_A3],
    
DATA_INFO[playerid][DATA_A4],
    
DATA_INFO[playerid][DATA_A5],
    
DATA_INFO[playerid][DATA_HASVEH],
    
DATA_INFO[playerid][DATA_BUYEDH],
    
DATA_INFO[playerid][DATA_FS],
    
DATA_INFO[playerid][DATA_BANCO],
    
DATA_INFO[playerid][DATA_WANTED],
    
DATA_INFO[playerid][DATA_ARMOUR],
    
DATA_INFO[playerid][DATA_USERNAME]);
    
mysql_tquery(UpwardQuery"OnSaved""i"playerid);
    return 
1;

OnPlayerDisconnect:
PHP Code:
if(DATA_INFO[playerid][DATA_LOGGEDIN] == true) return UPWARD_SAVE_DATA(playerid); 
OnDialogResponse na parte onde o player registra/loga
PHP Code:
DATA_INFO[playerid][DATA_LOGGEDIN] = true
Qualquer ajuda é bem-vinda.
__________________
--------- 𝑄𝑢𝑒 𝑎 𝑡𝑒𝑚𝑝𝑒𝑠𝑡𝑎𝑑𝑒 𝑛𝑜𝑠 𝑔𝑢𝑖𝑒 𝑒𝑚 𝑚𝑒𝑢 𝑑𝑒𝑠𝑝𝑒𝑟𝑡𝑎𝑟 ---------
l3eksz is offline   Reply With Quote
Old 23/05/2020, 09:59 PM   #2
DelK
Huge Clucker
 
DelK's Avatar
 
Join Date: Apr 2017
Location: Brazil
Posts: 449
Reputation: 40
Default Re: MySQL não salvando

Já verificou os logs?
__________________
DelK is offline   Reply With Quote
Old 23/05/2020, 10:10 PM   #3
l3eksz
Huge Clucker
 
l3eksz's Avatar
 
Join Date: Nov 2018
Location: Liepajas - Latvia
Posts: 204
Reputation: 2
Default Re: MySQL não salvando

Já, estão vazios, e como eu falei, os dados só estão sendo salvos quando eu dou /dogmx, que é o CMD que eu fiz para dar gmx no meu servidor.

PHP Code:
CMD:dogmx(playerid){
    if(
DATA_INFO[playerid][DATA_ADMIN] != 1337) return sendMessage(playerid, -1"Comando restrito!");
    foreach(new 
Player){
        
TogglePlayerControllable(rfalse);
        
isPlayerInGMX[r] = true;
        
sendMessage(rCOLOR_IVORY"Servidor reiniciando em quinze segundos, aguarde...");
        
UPWARD_SAVE_DATA(r);
        
SetTimer("RestartServer"15000false);
    }
    return 
1;
}

function 
RestartServer(){
    
SendRconCommand("gmx");
    return 
1;

__________________
--------- 𝑄𝑢𝑒 𝑎 𝑡𝑒𝑚𝑝𝑒𝑠𝑡𝑎𝑑𝑒 𝑛𝑜𝑠 𝑔𝑢𝑖𝑒 𝑒𝑚 𝑚𝑒𝑢 𝑑𝑒𝑠𝑝𝑒𝑟𝑡𝑎𝑟 ---------
l3eksz is offline   Reply With Quote
Old 24/05/2020, 06:37 AM   #4
Gguiz
Huge Clucker
 
Join Date: Dec 2015
Location: Brazil
Posts: 367
Reputation: 20
Default Re: MySQL não salvando

A variável de verificação se player está logado, foi criada antes ou depois das contas pararem de salvar?
Gguiz is offline   Reply With Quote
Old 24/05/2020, 03:47 PM   #5
GuiKommander
Gangsta
 
GuiKommander's Avatar
 
Join Date: Dec 2016
Posts: 818
Reputation: 25
Default Re: MySQL não salvando

Faça um debug na função de salvar a conta do jogador.

Exemplo:

PHP Code:
SalvarConta(playerid)
{
    
SCM(playerid0x00BB5EFF"As informações da sua conta foram salvas no banco de dados!");

Se essa função chamar é porque é problema na query, isso aconteceu cmg a alguns dias atrás.
Eu descobri que o meu problema era isso:

PHP Code:
// ERRADO
new query[150];

mysql_format(IDConexaoquerysizeof(query), "INSERT INTO `contas` (`Nome`) VALUES ('%e')"Nomeplayer(playerid));
mysql_tquery(IDConexaoquery);

// ele vai retornar -1, porque precisa de uma callback como referência.
DataPlayer[playerid][Mysqlid] = cache_insert_id();

// CERTO
mysql_format(IDConexaoquerysizeof(query), "INSERT INTO `contas` (`Nome`) VALUES ('%e')"Nomeplayer(playerid));
mysql_tquery(IDConexaoquery"OnPlayerCreated""i"playerid);

forward OnPlayerCreated(playerid);
public 
OnPlayerCreated(playerid)
{
    
// Query executada
    
DataPlayer[playerid][Mysqlid] = cache_insert_id();

Vc pode estar testando.
__________________
Programador SA-MP Disponível

Discord:
PhysicaL#0181

Wpp
Whatsapp
GuiKommander is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[Ajuda] Mysql não ta salvando skin Ryuzaki07 Português/Portuguese 17 03/11/2018 03:36 AM
[Ajuda] Mysql não está salvando Marllun Português/Portuguese 5 11/11/2017 02:21 AM
[Ajuda] Não ta salvando mysql maikons Português/Portuguese 39 26/08/2015 02:33 AM
[Ajuda] MYSQL não salvando Justing3 Português/Portuguese 5 08/12/2014 05:01 PM
[Ajuda] Salvando mysql minimessi10 Português/Portuguese 1 14/12/2013 03:16 PM


All times are GMT. The time now is 11:57 AM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.