Эмм, сейчас у тебя проверка сработает только если не нашло аккаунта. Это во-первых.
Во-вторых, если в таблице для поля "Name" не добавлен уникальный индекс, то подобный запрос - не самая лучшая идея. Как минимум, стоит добавить "LIMIT 1".
В-третьих, сейчас ты создал для автора вопроса хорошую такую дыру с SQL-инъекцией, ибо ты не экранируешь данные, которые вводит игрок. Поздравляю.
Да ещё и mysql_format в холостую вызвал.
- - - Добавлено - - -
Можно сделать вот так:
mysql_format(MysqlID, string, sizeof(string), "SELECT 1 FROM accounts WHERE pMember=%d AND Name='%e' LIMIT 1", inputtext, pInfo[playerid][pMember]);
mysql_tquery(MysqlID, string, "OfflineUninvite", "ds", playerid, inputtext);
И тогда проверка будет выглядеть так, как написали выше:
if(!cache_get_row_count())
{
SendClientMessage(playerid
, -1, "Аккаунт игрока не найден или игрок не состоит в Вашей фракции."); return 1;
}
// Дальше уже выполняешь нужные действия
Но, как написано в сообщении, проверка будет срабатывать либо когда игрок не найден, либо если он не во фракции.
Либо как советовали изначально:
mysql_format(MysqlID, string, sizeof(string), "SELECT pMember FROM accounts WHERE Name='%e' LIMIT 1", inputtext);
mysql_tquery(MysqlID, string, "OfflineUninvite", "ds", playerid, inputtext);
Проверка:
if(!cache_get_row_count())
{
return 1;
}
if(cache_get_field_content_int(0, "pMember") != pInfo[playerid][pMember])
{
return 1;
}
// Дальше уже выполняешь нужные действия
И тут уже сообщения более конкретизированы.