[22:19:24] [DEBUG] mysql_tquery - connection: 1, query: "SELECT COUNT(*) AS exists FROM factions WHERE facname='Staff'", callback: "r@MySQL_CheckFaction", format: "ds" [22:19:24] [DEBUG] CMySQLQuery::Execute[r@MySQL_CheckFaction] - starting query execution [22:19:24] [ERROR] CMySQLQuery::Execute[r@MySQL_CheckFaction] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'exists FROM factions WHERE facname='Staff'' at line 1 [22:19:24] [DEBUG] CMySQLQuery::Execute[r@MySQL_CheckFaction] - error will be triggered in OnQueryError [22:19:24] [DEBUG] Calling callback "OnQueryError".. [22:19:36] [DEBUG] mysql_tquery - connection: 1, query: "SELECT COUNT(*) AS exists FROM factions WHERE facname='Staff'", callback: "r@MySQL_CheckFaction", format: "ds" [22:19:36] [DEBUG] CMySQLQuery::Execute[r@MySQL_CheckFaction] - starting query execution [22:19:36] [ERROR] CMySQLQuery::Execute[r@MySQL_CheckFaction] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'exists FROM factions WHERE facname='Staff'' at line 1 [22:19:36] [DEBUG] CMySQLQuery::Execute[r@MySQL_CheckFaction] - error will be triggered in OnQueryError [22:19:36] [DEBUG] Calling callback "OnQueryError"..
CMD:fcreate(playerid,params[])
{
//new string[40],
new query[128], localfname[32];
if(sscanf(params,"s", localfname)) return SendClientMessage(playerid, -1, "Use: /fcreate [name]");
if(scorelevel[playerid] < 500) return SendClientMessage(playerid, COLOR_RED, "Vocк precisa ter score/level 500 para criar uma faction");
if(GetPlayerMoneyEx(playerid) < 500000) return SendClientMessage(playerid, COLOR_RED, "You do not have 500.000");
if(fmembro[playerid] > 0) return SendClientMessage(playerid, COLOR_RED, "Vocк jб tem uma faction");
format(query,sizeof query,"SELECT COUNT(*) AS exists FROM factions WHERE facname='%s'",localfname);
mysql_function_query(ConnectMYSQL,query,true,"r@MySQL_CheckFaction","ds",playerid, localfname);
// /\ importante deixar o cache como TRUE.
return 1;
}
public r@MySQL_CheckFaction(playerid, name[]) {
new field[11], exists;
cache_get_field_content(0, "exists", field, ConnectMYSQL);
exists = strval(field);
if(exists) {
// jб existe
return 1;
}
new query[128];
format(query, sizeof query, "INSERT INTO factions (facname) VALUES ('%s');", name);
mysql_function_query(ConnectMYSQL,query,true,"r@MySQL_CreateFaction","d",playerid);
return 1;
}
public r@MySQL_CreateFaction(playerid) {
new novafacid = cache_insert_id(ConnectMYSQL);
fmembro[playerid] = novafacid;
fcargo[playerid] = 5;
GivePlayerMoneyEx(playerid,-500000);
SendClientMessage(playerid,-1,"Sua facзгo foi criada com sucesso!");
return 1;
}
format(query,sizeof query,"SELECT COUNT(*) AS `exists` FROM factions WHERE facname='%s'",localfname);
|
Exists is mysql reserved keyword, you need to escape them with backtick `
https://dev.mysql.com/doc/refman/5.0/en/keywords.html Here's the right syntax. Код:
format(query,sizeof query,"SELECT COUNT(*) AS `exists` FROM factions WHERE facname='%s'",localfname); |