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

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

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

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

Не удаляет и не изменяет в БД

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

Windows_8

Умник
Команда не удаляет из БД и не записывает некоторые значения (когда понижаешь администратора)
MySQL r41-2

PHP:
CMD:makeadmin(playerid, params[])
{
    if(admin[playerid][admin_level] < 6) return SendClientMessage(playerid, -1, "Команды не существует. Информация по командам /help.");
	if(admin[playerid][admin_logged] == false) return SendClientMessage(playerid, -1, !"Авторизуйтесь в панели администратора.");
    extract params -> new player:target, adm_level; else
		return SendClientMessage(playerid, -1, !"Введите: /makeadmin [ID игрока] [уровень]");
    if(target == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, !"Указанный игрок не подключён к серверу.");
    if(!(0 <= adm_level <= 6)) return SendClientMessage(playerid, -1, !"Уровень администратора не может быть менее 0 или более 6.");
    if(admin[target][admin_level] == adm_level) return SendClientMessage(playerid, -1, !"Вы не можете установить игроку тот же самый уровень администратора.");
    new
        string[60 - 6 + MAX_PLAYER_NAME + 5 + 1];

    format(string, sizeof(string), "Вы назначили %s[%d] администратором %d уровня.", pInfo[target][pName], target, adm_level);
    SendClientMessage(playerid, -1, string);
    format(string, sizeof(string), "Администратор %s[%d] назначил вас администратором %d уровня.", pInfo[playerid][pName], playerid, adm_level);
    SendClientMessage(target, -1, string);

    if(adm_level == 0)
    {
        new
            sql_query[57 - 2 + 6];

        format(sql_query, sizeof(sql_query), "DELETE FROM `admins` WHERE `admin_uid` = '%d'");
        mysql_tquery(mysql_connect_ID, sql_query, "", "");

        admin[playerid][admin_uid] = 0;
        admin[playerid][admin_level] = 0;
        admin[playerid][admin_password][0] = EOS;
        strmid(admin[playerid][admin_password], "none", 0, 4);
        admin[playerid][admin_salt][0] = EOS;
        strmid(admin[playerid][admin_salt], "none", 0, 4);
        admin[playerid][admin_login_attempts] = 3;
        admin[playerid][admin_logged] = false;

        Iter_Remove(ConnectedAdmins, target);
    }
    else
    {
        if(adm_level == 0 + 1)
        {
            SendClientMessage(playerid, -1, !"Поздравляем! Регистрация пароля администратора /alogin.");
        }
        else
        {
            new
                sql_query[98 - 6 + MAX_PLAYER_NAME + 1 + 6];

            format(sql_query, sizeof(sql_query), "UPDATE `admins` SET `admin_name` = '%s', `admin_level` = '%d' WHERE `admin_uid` = '%d'");
            mysql_tquery(mysql_connect_ID, sql_query, "", "");
        }
    }
    admin[target][admin_level] = adm_level;
    return 1;
}
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу