test.pwn(13509) : warning 202: number of arguments does not match definition test.pwn(13509) : warning 202: number of arguments does not match definition test.pwn(19589 -- 19590) : warning 202: number of arguments does not match definition test.pwn(19589 -- 19590) : warning 202: number of arguments does not match definition test.pwn(19617 -- 19628) : warning 202: number of arguments does not match definition test.pwn(19617 -- 19628) : warning 202: number of arguments does not match definition
format(string, sizeof(string), "%s \
`CustomExterior`=%d, \
`VIP`=%d, \
`Family`=%d, \
`Faction`=%d, \
`Admin`=%d, \
`Wanted`=%d, \
`VehicleAble`=%d, \
`Color`=%d, \
`PickupModel`=%d, \
`Pass`='%s', \
`Locked`=%d WHERE `id`=%d", // < ----------- 19617
string,
DDoorsInfo[doorid][ddCustomExterior],
DDoorsInfo[doorid][ddVIP],
DDoorsInfo[doorid][ddFamily],
DDoorsInfo[doorid][ddFaction],
DDoorsInfo[doorid][ddAdmin],
DDoorsInfo[doorid][ddWanted],
DDoorsInfo[doorid][ddVehicleAble],
DDoorsInfo[doorid][ddColor],
DDoorsInfo[doorid][ddPickupModel],
g_mysql_ReturnEscaped(DDoorsInfo[doorid][dPass], MainPipeline), // < ----------- 19628
DDoorsInfo[doorid][dLocked],
doorid+1
);
stock SaveDynamicDoor(doorid)
{
new string[1024];
format(string, sizeof(string), "UPDATE `ddoors` SET \
`Description`='%s', \
`CustomInterior`=%d, \
`ExteriorVW`=%d, \
`ExteriorInt`=%d, \
`InteriorVW`=%d, \
`InteriorInt`=%d, \
`ExteriorX`=%f, \
`ExteriorY`=%f, \
`ExteriorZ`=%f, \
`ExteriorA`=%f, \
`InteriorX`=%f, \
`InteriorY`=%f, \
`InteriorZ`=%f, \
`InteriorA`=%f,",
g_mysql_ReturnEscaped(DDoorsInfo[doorid][ddDescription], MainPipeline),
DDoorsInfo[doorid][ddCustomInterior],
DDoorsInfo[doorid][ddExteriorVW],
DDoorsInfo[doorid][ddExteriorInt],
DDoorsInfo[doorid][ddInteriorVW],
DDoorsInfo[doorid][ddInteriorInt],
DDoorsInfo[doorid][ddExteriorX],
DDoorsInfo[doorid][ddExteriorY],
DDoorsInfo[doorid][ddExteriorZ],
DDoorsInfo[doorid][ddExteriorA],
DDoorsInfo[doorid][ddInteriorX],
DDoorsInfo[doorid][ddInteriorY],
DDoorsInfo[doorid][ddInteriorZ],
DDoorsInfo[doorid][ddInteriorA]
);
format(string, sizeof(string), "%s \
`CustomExterior`=%d, \
`VIP`=%d, \
`Family`=%d, \
`Faction`=%d, \
`Admin`=%d, \
`Wanted`=%d, \
`VehicleAble`=%d, \
`Color`=%d, \
`PickupModel`=%d, \
`Pass`='%s', \
`Locked`=%d WHERE `id`=%d",
string,
DDoorsInfo[doorid][ddCustomExterior],
DDoorsInfo[doorid][ddVIP],
DDoorsInfo[doorid][ddFamily],
DDoorsInfo[doorid][ddFaction],
DDoorsInfo[doorid][ddAdmin],
DDoorsInfo[doorid][ddWanted],
DDoorsInfo[doorid][ddVehicleAble],
DDoorsInfo[doorid][ddColor],
DDoorsInfo[doorid][ddPickupModel],
g_mysql_ReturnEscaped(DDoorsInfo[doorid][dPass], MainPipeline),
DDoorsInfo[doorid][dLocked],
doorid+1
);
}
new querystring[2048];
format(querystring,2048,"%s%s",querystring,STOCK_GetUpdateFormatFloat("CHAR_HEALTH",p[VAR_CHAR_HEALTH]));
format(querystring,2048,"%s%s",querystring,STOCK_GetUpdateFormatFloat("CHAR_ARMOUR",p[VAR_CHAR_ARMOUR]));
format(querystring,2048,"%s%s",querystring,STOCK_GetUpdateFormatFloat("CHAR_X",p[VAR_CHAR_X]));
format(querystring,2048,"%s%s",querystring,STOCK_GetUpdateFormatFloat("CHAR_Y",p[VAR_CHAR_Y]));
format(querystring,2048,"%s%s",querystring,STOCK_GetUpdateFormatFloat("CHAR_Z",p[VAR_CHAR_Z]));
format(querystring,2048,"%s%s",querystring,STOCK_GetUpdateFormatFloat("CHAR_A",p[VAR_CHAR_A]));
format(querystring,2048,"%s%s",querystring,STOCK_GetUpdateFormatInt("CHAR_INT",p[VAR_CHAR_INT]));
format(querystring,2048,"%s%s",querystring,STOCK_GetUpdateFormatInt("CHAR_VW",p[VAR_CHAR_VW]));
format(querystring,2048,"%s%s",querystring,STOCK_GetUpdateFormatInt("CHAR_PICKUP",p[VAR_CHAR_IN_PICKUP]));
format(querystring,2048,"%s%s",querystring,STOCK_GetUpdateFormatInt("CHAR_PICKUP_NUM",p[VAR_CHAR_PICKUP_NUM]));
format(querystring, 2048, "UPDATE `plr_character` SET %s `CHAR_ONLINE`=-1 WHERE CHAR_ID = %d",querystring,p[VAR_CHAR_ID]);
mysql_query_nodata(querystring);
// the STOCK_GetUpdateFormat will return something like this: %s = '%f', or %s = '%s', or %s = '%d',
Why not just put the whole string on one line? There is a limit, but you're WAY under it (512). And that's vastly better than calling format over and over and over again!
|
format(query, sizeof(query), "INSERT INTO `flags` (`id` ,`time` ,`issuer` ,`flag`) VALUES ('%d',NOW(),'%s','%s')", sqlid, mysql_ReturnEscaped(admin, MainPipeline), mysql_ReturnEscaped(flag, MainPipeline));
format(string, sizeof(string),
"UPDATE `ddoors` SET `Description`='%s',`CustomInterior`=%d, `ExteriorVW`=%d, `ExteriorInt`=%d, InteriorVW`=%d, `InteriorInt`=%d, `ExteriorX`=%f, `ExteriorY`=%f, `ExteriorZ`=%f, `ExteriorA`=%f, `InteriorX`=%f, `InteriorY`=%f, `InteriorZ`=%f, `InteriorA`=%f, `CustomExterior`=%d, `VIP`=%d, `Family`=%d, `Faction`=%d, `Admin`=%d, `Wanted`=%d, `VehicleAble`=%d, `Color`=%d, `PickupModel`=%d, `Pass`='%s', `Locked`=%d WHERE `id`=%d",
g_mysql_ReturnEscaped(DDoorsInfo[doorid][ddDescription], MainPipeline),
DDoorsInfo[doorid][ddCustomInterior],
DDoorsInfo[doorid][ddExteriorVW],
DDoorsInfo[doorid][ddExteriorInt],
DDoorsInfo[doorid][ddInteriorVW],
DDoorsInfo[doorid][ddInteriorInt],
DDoorsInfo[doorid][ddExteriorX],
DDoorsInfo[doorid][ddExteriorY],
DDoorsInfo[doorid][ddExteriorZ],
DDoorsInfo[doorid][ddExteriorA],
DDoorsInfo[doorid][ddInteriorX],
DDoorsInfo[doorid][ddInteriorY],
DDoorsInfo[doorid][ddInteriorZ],
DDoorsInfo[doorid][ddInteriorA],
DDoorsInfo[doorid][ddCustomExterior],
DDoorsInfo[doorid][ddVIP],
DDoorsInfo[doorid][ddFamily],
DDoorsInfo[doorid][ddFaction],
DDoorsInfo[doorid][ddAdmin],
DDoorsInfo[doorid][ddWanted],
DDoorsInfo[doorid][ddVehicleAble],
DDoorsInfo[doorid][ddColor],
DDoorsInfo[doorid][ddPickupModel],
g_mysql_ReturnEscaped(DDoorsInfo[doorid][dPass], MainPipeline),
DDoorsInfo[doorid][dLocked],
doorid+1
);
test.pwn(19630 -- 19632) : warning 202: number of arguments does not match definition test.pwn(19630 -- 19632) : warning 202: number of arguments does not match definition test.pwn(19630 -- 19655) : warning 202: number of arguments does not match definition test.pwn(19630 -- 19655) : warning 202: number of arguments does not match definition[
And if you have got the compiler flags right there should be no difference between Notepad++ and PAWNO - as you say they use the same compiler.
|
<KeyWord name="format" func="yes">
<Overload retVal="">
<Param name="output[ ]" />
<Param name="len" />
<Param name="const format[ ]" />
<Param name="{mixed}" />
</Overload>
format(output[], len, const format[], {Float,_}:...);
Show the g_mysql_ReturnEscaped function, there is usually something wrong with that function
|
stock g_mysql_ReturnEscaped()
{
new EscapedString[256];
return EscapedString;
}
stock g_mysql_ReturnEscaped(unEscapedString[], connectionHandle)
{
new EscapedString[256];
mysql_real_escape_string(unEscapedString, EscapedString, connectionHandle);
return EscapedString;
}
It was quite useless until i found one of your old posts.
pawn Код:
pawn Код:
|