Доброго времени суток, уважаемая аудитория портала. При написании системы семьи, наткнулся на очень интересную вещь. В общем, мне нужно обнулить переменную у всех найденных аккаунтов в базе, которые совпадают с переменной определенного игрока.
Пример вызываемого СЕЛЕКТ-запроса:
PHP код:
CMD:kleave(playerid)
{
mysql_query_string[0] = EOS;
mysql_format(dbHandle, mysql_query_string, 128, "SELECT * FROM "T_ACCOUNTS" WHERE fam_m = %i LIMIT 1", pInfo[playerid][pFamilyMember]);
mysql_tquery(dbHandle, mysql_query_string, "@CheckMemberFamily", "i", pInfo[playerid][pFamilyMember]);
return 1;
}
Колбэк:
PHP код:
@CheckMemberFamily(famid);
@CheckMemberFamily(famid)
{
new rows;
cache_get_row_count(rows);
if(rows)
{
mysql_query_string[0] = EOS;
mysql_format(dbHandle, mysql_query_string, 70, "UPDATE "T_ACCOUNTS" SET fam_m = 0 WHERE fam_m = %i", famid);
mysql_tquery(dbHandle, mysql_query_string, "", "");
}
foreach(new i : Player)
{
if(!gPlayerLogged[i]) continue;
if(pInfo[i][pFamilyMember] != famid) continue;
SendClientMessage(i, COLOR_RED, "Создатель вашей семьи покинул семью по собственному желанию");
SendClientMessage(i, COLOR_RED, "Все участники были расформированы");
pInfo[i][pFamilyMember] = 0;
}
mysql_query_string[0] = EOS;
mysql_format(dbHandle, mysql_query_string, 50, "DELETE FROM "T_FAMILY" WHERE id = %i", famid);
mysql_tquery(dbHandle, mysql_query_string, "", "");
return 1;
}
Правильно ли я все написал, и если нет, то как лучше?