edward1337
Новичок
В моде есть система просмотр онлайн игрока за определённое кол-во дней, ну так вот, почему то резко перестало работать.
Ошибку которую выдаёт в логах:
Ошибку которую выдаёт в логах:
[ERROR] error #1054 while executing query "SELECT t2.date, t2.online_sec, t2.afk_sec FROM accounts AS t1 LEFT JOIN online_player t2 ON t2.accountid = t1.id WHERE (t1.name = 'Edward_Gronskiy') AND (TO_DAYS(CURDATE()) - TO_DAYS(t2.date) <= 30) ORDER BY t2.date DESC;": Unknown column 't1.id' in 'on clause' (D:\Games\mode\gamemodes\new.pwn:34412)
Код:
format(sql_str, sizeof(sql_str), "\
SELECT t2.dnameate, t2.online_sec, t2.afk_sec \
FROM "T_ACCOUNTS" AS t1 \
LEFT JOIN "T_ONLINE_PLAYER" t2 ON t2.accountid = t1.id \
WHERE (t1. = '%s') AND (TO_DAYS(CURDATE()) - TO_DAYS(t2.date) <= 30) ORDER BY t2.date DESC;",
inputtext
);
mysql_tquery(dbHandle, sql_str, "@OnCheckPlayerOnline", "is", playerid, inputtext);
Код:
@OnCheckPlayerOnline(playerid, name[]);
@OnCheckPlayerOnline(playerid, name[])
{
new rows;
cache_get_row_count(rows);
if(!rows) return SendClientMessage(playerid, COLOR_GREY, "Игрок не найден!");
new header_str[36], online_date[20], online_sec, afk_sec;
dlg_str[0] = EOS;
if(rows==1) format(header_str, sizeof(header_str), "{3399FF}Онлайн за последний день");
else format(header_str, sizeof(header_str), "{3399FF}Онлайн за последние %d %s", rows, PluralToText(rows, "день", "дня", "дней"));
strcat(dlg_str, header_str);
strcat(dlg_str, "\n\n");
for(new i; i < rows; i++)
{
cache_get_value_name(i, "date", online_date, 20);
cache_get_value_name_int(i, "online_sec", online_sec);
cache_get_value_name_int(i, "afk_sec", afk_sec);
format(dlg_str, sizeof(dlg_str), "%s{FFFFFF}%s\t\t%s {FF9900}[AFK: %s]\n", dlg_str, online_date, ConvertsCmdTime(online_sec), ConvertsCmdTime(afk_sec));
}
ShowPlayerDialog(playerid, dAdminPanel+5, DIALOG_STYLE_MSGBOX, name, dlg_str, "Назад", "Закрыть");
return 1;
