[Ajuda] Salvamento em MySQL
#1

O que a de errado neste codigo?

Код HTML:
new query[128],Float:Pos[4];

    GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
    GetPlayerFacingAngle(playerid, Pos[3]);

    mysql_format(mysql, query, sizeof(query), "UPDATE `contas` SET `Dinheiro` = %d, `PosX` = %f, `PosY` = %f, `PosZ` = %f, `PosA` = %f, `Admin` = %d, `Skin` = %d, `VIP` = %d, `Level` = %d, `Clan` = %d WHERE `Nome` = %s",
    GetPlayerMoney(playerid), Float:Pos[0], Float:Pos[1], Float:Pos[2], Float:Pos[3],Player[playerid][Admin],GetPlayerSkin(playerid),Player[playerid][VIP],GetPlayerScore(playerid),Player[playerid][Clan], GetName(playerid));
    mysql_tquery(mysql, query, "", "");
Quando saio do jogo salva tudo,so nгo salva a posiзгo,e tambem nгo salva o primeiro log do player(apos o registro o mesmo sai dai nгo salva) salva apenas o segundo em diante.Nгo estou entendendo.No MySQL a posiзгo estб do tipo float tambem.
Reply
#2

Tenta colocar isso no lugar e me diz se funciona
PHP код:
new query[128],Float:Pos[4];

    
GetPlayerPos(playeridPos[0], Pos[1], Pos[2]);
    
GetPlayerFacingAngle(playeridPos[3]);

    
mysql_format(mysqlquerysizeof(query), "UPDATE `contas` SET `Dinheiro` = %d, `PosX` = %f, `PosY` = %f, `PosZ` = %f, `PosA` = %f, `Admin` = %d, `Skin` = %d, `VIP` = %d, `Level` = %d, `Clan` = %d WHERE `Nome` = '%s'",
    
GetPlayerMoney(playerid), Float:Pos[0], Float:Pos[1], Float:Pos[2], Float:Pos[3],Player[playerid][Admin],GetPlayerSkin(playerid),Player[playerid][VIP],GetPlayerScore(playerid),Player[playerid][Clan], GetName(playerid));
    
mysql_tquery(mysqlquery""""); 
Se funcionar й pq quando vocк usa %s precisa colocar aspas simples assim = '%s'
Reply
#3

Infelizmente nгo mudou em nada.Sinceramente nгo sei mais o que pode ser.Alias o problema й no salvamento da posiзгo,tentei tambem colocar as aspas e nao funcionou ;/
Reply
#4

Tenta tirar o Float: da frente e Deixa sу Pos[1], Pos[2], Pos[3]
Reply
#5

Acho que a query possui mais de 128 caracteres. Por via das dъvidas, poste o mysql_log.
Reply
#6

Quote:
Originally Posted by zPain
Посмотреть сообщение
Acho que a query possui mais de 128 caracteres. Por via das dъvidas, poste o mysql_log.
Mais pura verdade Pain kkk muita desatenзгo e novamente vocк me salvando.Obrigado!
Reply
#7

Quote:
Originally Posted by garotin
Посмотреть сообщение
Tenta colocar isso no lugar e me diz se funciona
PHP код:
new query[128],Float:Pos[4];
    
GetPlayerPos(playeridPos[0], Pos[1], Pos[2]);
    
GetPlayerFacingAngle(playeridPos[3]);
    
mysql_format(mysqlquerysizeof(query), "UPDATE `contas` SET `Dinheiro` = %d, `PosX` = %f, `PosY` = %f, `PosZ` = %f, `PosA` = %f, `Admin` = %d, `Skin` = %d, `VIP` = %d, `Level` = %d, `Clan` = %d WHERE `Nome` = '%s'",
    
GetPlayerMoney(playerid), Float:Pos[0], Float:Pos[1], Float:Pos[2], Float:Pos[3],Player[playerid][Admin],GetPlayerSkin(playerid),Player[playerid][VIP],GetPlayerScore(playerid),Player[playerid][Clan], GetName(playerid));
    
mysql_tquery(mysqlquery""""); 
Se funcionar й pq quando vocк usa %s precisa colocar aspas simples assim = '%s'
Isso nгo interfere em nada..
Reply
#8

Quote:
Originally Posted by Jimmmy
Посмотреть сообщение
Isso nгo interfere em nada..
Claro que interfere, uma cadeia de caracteres (string) precisa ser destacada por aspas na query, do contrбrio й erro de sintaxe.
Reply
#9

Quote:
Originally Posted by ipsLeon
Посмотреть сообщение
Claro que interfere, uma cadeia de caracteres (string) precisa ser destacada por aspas na query, do contrбrio й erro de sintaxe.
Eu sempre usei com as ' ' mas tambem jб usei sem elas nгo muda em nada.

Poderias explicar em que pode projudicar

@Edit

Sempre й bom saber de alguem que saiba rs, bom meu amigo que havia me falado eu testei, e nгo mudou nada mais eu sempre procuro fazer do jeito certo entгo deixei ' '
Reply
#10

Quote:
Originally Posted by Jimmmy
Посмотреть сообщение
Eu sempre usei com as ' ' mas tambem jб usei sem elas nгo muda em nada.

Poderias explicar em que pode projudicar

@Edit

Sempre й bom saber de alguem que saiba rs, bom meu amigo que havia me falado eu testei, e nгo mudou nada mais eu sempre procuro fazer do jeito certo entгo deixei ' '
Claro que muda, o mysql vai retornar um erro de sintaxe e a sua query nгo vai ser executada, apenas pra nъmeros inteiros й opcional usar as aspas.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)