PDA

Просмотр полной версии : [Native] db_get_field(DBResult: dbresult, const field[], result[], maxlength)



Osetin
14.11.2013, 23:23
Позволяет узнать содержимое поля результата по его имени.

Параметры:

(DBResult:dbresult, const field[], result[], maxlength)DBResult:dbresult Идентификатор результата.
const field[] Имя поля.
result[] Буфер для хранения содержимого поля.
maxlength Число копируемых в буфер символов.


Возвращает Эта функция не возвращает никакого значения.


public OnPlayerCommandText(playerid, cmdtext[])
{
if (!strcmp(cmdtext, "/stats", true, 6))
{
new DB:userdb = db_open("users.db");
new DBResult:dbresult;
new name[MAX_PLAYER_NAME];
new buffer[100];

GetPlayerName(playerid, name, MAX_PLAYER_NAME);
format(buffer, sizeof(buffer), "SELECT `kills`,`deaths`,`money` FROM `users` WHERE name=lower('%s')", name);
dbresult = db_query(userdb, buffer);

// Узнаем значения каждого из 3х запрошенных полей: kills, deaths, money
db_get_field(dbresult, "kills", buffer, sizeof(buffer));
format(buffer, sizeof(buffer), " Убийств: %d", strval(buffer));
SendCLientMessage(playerid, 0x00FF00FF, buffer);
db_get_field(dbresult, "deaths", buffer, sizeof(buffer));
format(buffer, sizeof(buffer), " Смертей: %d", strval(buffer));
SendCLientMessage(playerid, 0x00FF00FF, buffer);
db_get_field(dbresult, "money", buffer, sizeof(buffer));
format(buffer, sizeof(buffer), " Всего денег: %d", strval(buffer));
SendCLientMessage(playerid, 0x00FF00FF, buffer);

db_free_result(dbresult);
db_close(userdb);
}
}