Добро пожаловать!

Зарегистрировавшись у нас, вы сможете обсуждать, делиться и отправлять личные сообщения другим участникам нашего сообщества.

Зарегистрироваться!
  • Если Вы желаете помогать развитию проекта, готовы заполнять раздел(-ы) и подсказывать другим пользователям на портале, есть возможность попасть в команду редакторов. Для этого следует обратиться в техническую поддержку
Пользователь
Регистрация
26 Мар 2024
Сообщения
35
Есть вопросик как сделать чтобы каждый день в 0:00 в базу данных отправлялся запрос на добавление параметров, а так же подскажите как можно разумнее реализовать систему нормы у админов чтоб в бд записывалась.
 
Решение
Pawn:
public norma_adm(playerid)
{
    new hour, minute, second, qua[50];
    gettime(hour, minute, second);
   
    if (hour == 17 && minute == 50 && second == 0) // Если время 17:50:00 (хз зачем оно, пусть будет)
    {
        new qars[300], Cache: result, rows, name[24], id;

        format(qua, sizeof(qua), "Время %d:%02d:%02d", hour, minute, second);
        SendClientMessage(playerid, -1, qua);
       
        mysql_format(mysql, qars, sizeof(qars), "SELECT * FROM accounts WHERE admin > 0 LIMIT 100");
        result = mysql_query(mysql, qars, true);
       
        rows = cache_num_rows();

        for (new i = 0; i < rows; i++) // Проходим по всем админам
        {
            id = cache_get_field_content_int(i, "id")...
Пользователь
Регистрация
26 Мар 2024
Сообщения
35
Я так сделал и у меня получился такой код всей функции

Pawn:
public: norma_adm(playerid)
{
    new hour, minute, second, qua[50];
     gettime(hour, minute, second);
     if(hour == 17 && minute == 50 && second 0)
      {
          new qars[300], Cache: result, rows, name[24], id;
          format(qua, sizeof qua, "Âðåìÿ %d:%02d:%02d", hour, minute, second);
        SendClientMessage(playerid, -1, qua);
        
        mysql_format(mysql, qars, sizeof qars, "SELECT * FROM accounts WHERE admin > 0 LIMIT 100");
        result = mysql_query(mysql, qars, true);
        
        rows = cache_num_rows();

        for(new i; i < rows; i ++)
        {
            id = cache_get_field_content_int(i, "id");
            cache_get_field_content(i, "name", name);
        }
        cache_delete(result);
        
        mysql_format(mysql, qars, sizeof qars, "INSERT INTO adm_norma (name, acc_id, online, report, jail, mute, rmute, kick, sban, ban, data) VALUES ('%s', %d, 0, 0, 0, 0, 0, 0, 0, 0, %d)", name, id, gettime());
        mysql_query(mysql, qars, false);
    }
    return 1;
}
Вот и сейчас проблема в том что когда функция срабатывает в базу данных записывается только 1 строчка с 1 аккаунтом у которого есть админка подскажите пожалуйста в чём ошибка
 
Пользователь
Регистрация
30 Мар 2023
Сообщения
78
Pawn:
public norma_adm(playerid)
{
    new hour, minute, second, qua[50];
    gettime(hour, minute, second);
   
    if (hour == 17 && minute == 50 && second == 0) // Если время 17:50:00 (хз зачем оно, пусть будет)
    {
        new qars[300], Cache: result, rows, name[24], id;

        format(qua, sizeof(qua), "Время %d:%02d:%02d", hour, minute, second);
        SendClientMessage(playerid, -1, qua);
       
        mysql_format(mysql, qars, sizeof(qars), "SELECT * FROM accounts WHERE admin > 0 LIMIT 100");
        result = mysql_query(mysql, qars, true);
       
        rows = cache_num_rows();

        for (new i = 0; i < rows; i++) // Проходим по всем админам
        {
            id = cache_get_field_content_int(i, "id");
            cache_get_field_content(i, "name", name, sizeof(name));
           
            mysql_format(mysql, qars, sizeof(qars),
                "INSERT INTO adm_norma (name, acc_id, online, report, jail, mute, rmute, kick, sban, ban, data) "
                "VALUES ('%s', %d, 0, 0, 0, 0, 0, 0, 0, 0, UNIX_TIMESTAMP())",
                name, id);
           
            mysql_query(mysql, qars, false);
        }
       
        cache_delete(result);
    }
   
    return 1;
}

попробовал второй раз себя в pawno, проверь, мб сработает.
 
Пользователь
Регистрация
30 Мар 2023
Сообщения
78
Всё нормально работает, спасибо сам чёт тупанул что запись в бд надо было в цикл пихать
если решение помогло - поставьте пожалуйста, значок решено, и отметьте мой ответ - как решение
 
Сверху