Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

cache_get_value_name_int

Статус
В этой теме нельзя размещать новые ответы.

GLADE

Новичок
Всех приветствую.
Cтолкнулся с такой ошибкой, вырезал систему промокодов из мода Grand RP (social), перевёл на MySQL R40.
В логах плагина выдало это:
PHP:
[plugins/mysql] cache_get_value_name_int: invalid row index '0' (number of rows: '0')
Ошибка вот в этих стоках:

PHP:
@PromoCodeCheck(playerid, code[]);
@PromoCodeCheck(playerid, code[])
{
    new rows;
    cache_get_row_count(rows);
    if(!rows) return SCM(playerid, COLOR_GREY, "[Ошибка] Указанный промокод не найден");
    new code_money, code_players, code_data, used_count;
    code_money = cache_get_value_name_int(0, "money", code_money);
    code_players = cache_get_value_name_int(0, "players", code_players);
    code_data = cache_get_value_name_int(0, "data", code_data);
    used_count = cache_get_value_name_int(0, "used_count", used_count);
    SetPVarInt(playerid, "code_money_", code_money);
    SetPVarInt(playerid, "code_players_", code_players);
    SetPVarInt(playerid, "code_data_", code_data);
    SetPVarInt(playerid, "used_count_", used_count);
    mysql_query_string[0] = EOS;
    format(mysql_query_string, 200, "SELECT * FROM "T_PROMOUSED" WHERE code = '%s' AND idacca = %d", code, PlayerInfo[playerid][pID]);
    mysql_tquery(mysql, mysql_query_string, "@PromoCodeCheck2", "ds", playerid, code);
    return 1;
}

@PromoCodeCheck2(playerid, code[]);
@PromoCodeCheck2(playerid, code[])
{
    new rows;
    cache_get_row_count(rows);
    if(rows)
    {
        SCM(playerid, COLOR_GREY, "[Ошибка] Вы уже указывали данный промокод");
		DeletePVar(playerid, "code_money_");
		DeletePVar(playerid, "code_players_");
		DeletePVar(playerid, "code_data_");
		DeletePVar(playerid, "used_count_");
        return 1;
    }
	mysql_query_string[0] = EOS;
	format(mysql_query_string, sizeof(mysql_query_string), "INSERT INTO "T_PROMOUSED" (idacca,code) VALUE ('%d','%s')", PlayerInfo[playerid][pID], code);
	mysql_tquery(mysql, mysql_query_string, "", "");
	new code_money, code_players, code_data, used_count;
	code_money = GetPVarInt(playerid, "code_money_"); //Тут ошибка
	code_players = GetPVarInt(playerid, "code_players_"); //Тут ошибка
	code_data = GetPVarInt(playerid, "code_data_"); //Тут ошибка
	used_count = GetPVarInt(playerid, "used_count_"); //Тут ошибка
    new string[128];
	format(string, sizeof(string), "Промокод {FFFF00}%s{FFFFFF} успешно использован. Вам начислено {46CA00}%i$", code, code_money);
	SCM(playerid, COLOR_WHITE, string);
	GiveMoney(playerid, code_money, 0);
	code_players --;
	used_count ++;
	mysql_query_string[0] = EOS;
    format(mysql_query_string, 300, "UPDATE "T_PROMOCODE" SET players = %d, used_count = %d WHERE code = '%s'", code_players, used_count, code);
    mysql_tquery(mysql, mysql_query_string, "", "");
    if(code_players == 0)
    {
        mysql_query_string[0] = EOS;
        format(mysql_query_string, 128, "DELETE FROM "T_PROMOCODE" WHERE code = '%s'", code);
        mysql_tquery(mysql, mysql_query_string, "", "");
    }
    if(gettime() >= code_data && code_players == 0)
    {
        mysql_query_string[0] = EOS;
		format(mysql_query_string, 128, "DELETE FROM "T_PROMOCODE" WHERE code = '%s'", code);
        mysql_tquery(mysql, mysql_query_string, "", "");
    }
    DeletePVar(playerid, "code_money_");
	DeletePVar(playerid, "code_players_");
	DeletePVar(playerid, "code_data_");
	DeletePVar(playerid, "used_count_");

    return 1;
}
В чём может быть ошибка?
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу