[Ajuda] Sistema de Emplacamento
#1

Fui na бrea de scripting help, solicitando ajuda sobre isso, e um deles me disse pra pegar o nome do dono do veнculo pelo retorno mysql...
E, eu nгo sei exatamente NADA em mysql..

Quem souber, como pegar o nome do jogador que й dono do veнculo por mysql, por favor, postar abaixo..

Command:
PHP код:
CMD:checarplaca(playeridparams[])
{
    static
        
id 0;
    if (
GetFactionType(playerid) != FACTION_POLICE)
        return 
SendErrorMessage(playerid"Vocк precisa ser um policial.");
    if (
sscanf(params"d"id))
        return 
SendSyntaxMessage(playerid"/checarplaca [vehicleid]");
    if (!
IsValidVehicle(id) || Car_GetID(id) == -1)
        return 
SendErrorMessage(playerid"Vocк especificou um ID invбlido.");
    new 
szString[128];
    
format(szStringsizeof(szString), "Este veнculo й pertencente %s. Obrigado por realizar esta consulta.\n\nPOLНCIA MILITAR DO ESTADO DE SГO PAULO"CarData[id][carOwner]);
    
Dialog_Show(playeridInfoCarroDIALOG_STYLE_MSGBOX"TABLET PMESP"szString"Ok""");
    return 
1;

MySQL e EXEMPLO
PHP код:
CarData[i][carOwner] = cache_get_field_int(i"carOwner");
format(strsizeof(str), "SELECT * FROM `carstorage` WHERE `ID` = '%d'"CarData[i][carID]); 
Enum carData:

PHP код:
enum carData {
    
carID,
    
carExists,
    
carModel,
    
carOwner,
    
Float:carPos[4],
    
carColor1,
    
carColor2,
    
carPaintjob,
    
carLocked,
    
carMods[14],
    
carImpounded,
    
carImpoundPrice,
    
carFaction,
    
carWeapons[5],
    
carAmmo[5],
    
carVehicle
}; 
Reply
#2

vocк precisa trocar "dono_tabeladb" pelo nome do dono na sua tabela de banco de dados!
PHP код:
new dono[140];
cache_get_field_content(0"dono_tabeladb"dono); 
Quote:

Ps: "mysql" й o nome de uma empresa, o correto й SQL "Structured Query Language"
Reply
#3

Se a coluna carOwner for realmente string, vc precisa declarar isso no enumerador, no momento vc estб declarando como inteiro:
Код:
enum carData { 
    carID, 
    carExists, 
    carModel, 
    carOwner[MAX_PLAYER_NAME], // STRING
    Float:carPos[4], 
    carColor1, 
    carColor2, 
    carPaintjob, 
    carLocked, 
    carMods[14], 
    carImpounded, 
    carImpoundPrice, 
    carFaction, 
    carWeapons[5], 
    carAmmo[5], 
    carVehicle 
};
Caso realmente seja string, @RazorGuigo estб certo, vc estб pegando um valor inteiro, quando na verdade a coluna carOwner й VARCHAR/TEXT.

@edit

Pode formatar string com a prуpria funзгo do MySQL (mysql_format).
Reply
#4

Deram 2 erros '-'

Quote:

C:\Program Files (x86)\Minas Gerais Roleplay\gamemodes\roleplay.pwn(36120) : error 001: expected token: "-identifier-", but found "*"
C:\Program Files (x86)\Minas Gerais Roleplay\gamemodes\roleplay.pwn(36121) : error 017: undefined symbol "dono"

Comando:
PHP код:
CMD:checarplaca(playeridparams[])
{
    static
        
id 0;

    new 
string[128];

    if (
GetFactionType(playerid) != FACTION_POLICE)
        return 
SendErrorMessage(playerid"Vocк precisa ser um policial.");

    if (
sscanf(params"d"id))
        return 
SendSyntaxMessage(playerid"/checarplaca [vehicleid]");

    if (!
IsValidVehicle(id) || Car_GetID(id) == -1)
        return 
SendErrorMessage(playerid"You specified an invalid ID.");

    new*
dono[140];*
    
format(string,sizeof(string),"O dono deste veнculo й %s."cache_get_field_int(id"carOwner"dono));
    
SendClientMessage(playeridCOLOR_GREENstring);

    return 
1;

Reply
#5

@edit:

nгo havia lido o nome do criador do tуpico, desculpem. sу ajudo quem й humilde. e vai que interpretam mal minha resposta aqui tambйm :/
Reply
#6

PHP код:
    new dono[140];
    
cache_get_field_content(id"carOwner"dono);
    
format(string,sizeof(string),"O dono deste veнculo й %s."dono);
    
SendClientMessage(playeridCOLOR_GREENstring); 
tu colocou '*' nгo sei pq, e tambem ta usando o SQL:
Quote:

Inteiros retorna o valor cache_get_field_int(row, "db_name");
Strings: retorna sucesso ou fail '0 our 1' cache_get_field_content(row, "db_name", &string):
&string= armazena o format na string colocada!

Reply
#7

Quote:
Originally Posted by RazorGuigo
Посмотреть сообщение
PHP код:
    new dono[140];
    
cache_get_field_content(id"carOwner"dono);
    
format(string,sizeof(string),"O dono deste veнculo й %s."dono);
    
SendClientMessage(playeridCOLOR_GREENstring); 
tu colocou '*' nгo sei pq, e tambem ta usando o SQL:
O '*' apareceu nгo sei como, mas acho que foi porque eu copiei e colei.
Bom, agora manteve 4 erros, eu tentei de tudo pra conseguir colocar a string pra funcionar, mas deu erro...

Comando:
PHP код:
CMD:checarplaca(playeridparams[])
{
    static
        
id 0;
    new 
string[128],
    
dono[128];
    if (
GetFactionType(playerid) != FACTION_POLICE)
        return 
SendErrorMessage(playerid"Vocк precisa ser um policial.");
    if (
sscanf(params"d"id))
        return 
SendSyntaxMessage(playerid"/checarplaca [vehicleid]");
    if (!
IsValidVehicle(id) || Car_GetID(id) == -1)
        return 
SendErrorMessage(playerid"You specified an invalid ID.");
        
    
cache_get_field_content(id,*"carOwner"dono); // Dando erro aqui , e provavelmente na linha de baixo '-'
    
format(string,sizeof(string),"O*dono*deste*veнculo*й*%s.",*dono); // Aqui у
    
SendClientMessage(playerid,*COLOR_GREEN,*string);
    return 
1;

Erros:
Quote:

C:\Program Files (x86)\Minas Gerais Roleplay\gamemodes\roleplay.pwn(36121) : error 029: invalid expression, assumed zero
C:\Program Files (x86)\Minas Gerais Roleplay\gamemodes\roleplay.pwn(36121) : error 029: invalid expression, assumed zero
C:\Program Files (x86)\Minas Gerais Roleplay\gamemodes\roleplay.pwn(36121) : error 029: invalid expression, assumed zero
C:\Program Files (x86)\Minas Gerais Roleplay\gamemodes\roleplay.pwn(36121) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase


4 Errors.

Reply
#8

Quote:
Originally Posted by MineiriinHo
Посмотреть сообщение
O '*' apareceu nгo sei como, mas acho que foi porque eu copiei e colei.
Bom, agora manteve 4 erros, eu tentei de tudo pra conseguir colocar a string pra funcionar, mas deu erro...

Comando:
PHP код:
CMD:checarplaca(playeridparams[])
{
    static
        
id 0;
    new 
string[128],
    
dono[128];
    if (
GetFactionType(playerid) != FACTION_POLICE)
        return 
SendErrorMessage(playerid"Vocк precisa ser um policial.");
    if (
sscanf(params"d"id))
        return 
SendSyntaxMessage(playerid"/checarplaca [vehicleid]");
    if (!
IsValidVehicle(id) || Car_GetID(id) == -1)
        return 
SendErrorMessage(playerid"You specified an invalid ID.");
        
       
cache_get_field_content(id"carOwner"dono);
       
format(string,sizeof(string),"O dono deste veнculo й %s."dono);
       
SendClientMessage(playeridCOLOR_GREENstring);
    return 
1;

Erros:
Mano por favor coloca comentбrio na linha do erro! nгo sou um adivinho!
Reply
#9

Tб aн у

PHP код:
CMD:checarplaca(playerid,*params[]) 

       static 
              
id 0
       new 
string[128], 
       
dono[128]; 
       if (
GetFactionType(playerid) != FACTION_POLICE
              return 
SendErrorMessage(playerid"Vocк precisa ser um policial."); 
       if (
sscanf(params"d"id)) 
              return 
SendSyntaxMessage(playerid"/checarplaca [vehicleid]"); 
       if (!
IsValidVehicle(id) || Car_GetID(id) == -1
              return 
SendErrorMessage(playerid"You specified an invalid ID."); 
       
cache_get_field_content(id"carOwner"dono); // Dando erro aqui '-' 
       
format(string,sizeof(string),"O dono deste veнculo й %s."dono);
       
SendClientMessage(playeridCOLOR_GREENstring); 
       return 
1

Reply
#10

Atualize seu Plugins de SQL para R39-6!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)