Question

Добрый вечер уважаемые форумчане такая проблема. на сервере не сохраняется лидерка выдаю лидерку все хорошо она есть стоит перезайти как лидерка слетает прошу помочь решить данную проблему

 

команда выдачи лидерки 

CMD:makeleader(playerid, params[])
{
    if(IsAdmin(playerid, 6)) return 1;
    if(sscanf(params, "dd", params[0],params[1])) return SCM(playerid, COLOR_WHITE, "Используйте: /makeleader [id игрока] [id фракции или 0, чтобы уволить из организации]");
    if( !IsPlayerLogged( params[0] ) ) return SCM( playerid, COLOR_DARK_GRAY, !INCORRECT_PLAYER_ID );
    if(params[1]>7 || params[1]<0return SCM(playerid, COLOR_WHITE, "id фракции от 1 до 7");

    pInfo[params[0]][pFrak]=params[1]; new frak[30];

    switch(params[1])
    {
        case 0// снятие с фракции
        {
            pInfo[params[0]][pRang]=0;
            pInfo[params[0]][pFrak]=0;
            strmid(pInfo[params[0]][pDol], "0"0, strlen("0"), 35);
            strmid(pInfo[params[0]][pDols], "0"0, strlen("0"), 35);

            pformat:( "Администратор "C_GRAY"%s[%d]"C_WHITE" снял Вас с фракции!", pInfo[playerid][pName], playerid );
            psend:( params[0], COLOR_WHITE );

            pformat:( "Вы сняли "C_GRAY"%s[%d]"C_WHITE" с фракции!", pInfo[params[0]][pName], params[0] );
            psend:( playerid, COLOR_WHITE );

            mysql_format:str_cmd("UPDATE `" #DB_ACCOUNTS "` SET `Frak` = '0|0', `Dol` = '0', `Org` = '0', `Orang` = '0' WHERE `ID` = '%d'",pInfo[params[0]][pID]);
            mysql_function_query(mysql_connect_ID, str_cmdfalse"""");

            return 1;
        }
        case 1: pInfo[params[0]][pRang]=5, f(frak),"ОМВД"), strmid(pInfo[params[0]][pDol], "Сотрудник ОМВД"0, strlen("Сотрудник ОМВД"), 35);
        case 2: pInfo[params[0]][pRang]=5, f(frak),"ФСВНГ"), strmid(pInfo[params[0]][pDol], "Сотрудник ФСВНГ"0, strlen("Сотрудник ФСВНГ"), 35);
        case 3: pInfo[params[0]][pRang]=5, f(frak),"ОГИБДД"), strmid(pInfo[params[0]][pDol], "Сотрудник ОГИБДД"0, strlen("Сотрудник ОГИБДД"), 35);
        case 4: pInfo[params[0]][pRang]=5, f(frak),"Правительство"), strmid(pInfo[params[0]][pDol], "Сотрудник правительства"0, strlen("Сотрудник правительства"), 35);
        case 5: pInfo[params[0]][pRang]=5, f(frak),"ПСЧ №15"), strmid(pInfo[params[0]][pDol], "Сотрудник ПСЧ №15"0, strlen("Сотрудник ПСЧ №15"), 35);
        case 6: pInfo[params[0]][pRang]=5, f(frak),"БСМП №54"), strmid(pInfo[params[0]][pDol], "Сотрудник БСМП №54"0, strlen("Сотрудник БСМП №54"), 35);
        case 7: pInfo[params[0]][pRang]=5, f(frak),"ТРК Нижегородск-24"), strmid(pInfo[params[0]][pDol], "Сотрудник ТРК"0, strlen("Сотрудник ТРК"), 35);
    }

    pformat:( "Вы назначили игрока "C_GRAY"%s[%d]"C_WHITE" лидером фракции "C_GRAY"%s", pInfo[params[0]][pName],params[0], frak );
    psend:( playerid, COLOR_WHITE );

    pformat:( "Администратор "C_GRAY"%s[%d]"C_WHITE" назначил Вас лидером фракции "C_GRAY"%s", pInfo[playerid][pName], playerid, frak );
    psend:( params[0], COLOR_WHITE );

    mysql_format:str_cmd("UPDATE `" #DB_ACCOUNTS "` SET `Frak` = '%d|%d', `Dol` = '%s', `Dols` = '%s' WHERE `ID` = '%d'",
        pInfo[params[0]][pFrak],
        pInfo[params[0]][pRang],
        pInfo[params[0]][pDol],
        pInfo[params[0]][pDols],
        pInfo[params[0]][pID]);

    mysql_function_query(mysql_connect_ID, str_cmd, false"""");
    SaveFrak(playerid);

    return 1;
}

так же сто сохранения 

SaveFrak(playerid)
{
    mysql_format:str_big("UPDATE `" #DB_ACCOUNTS "` SET `Frak` = '%d'  WHERE `Name` = '%s'",pInfo[playerid][pFrak],pInfo[playerid][pName]);
    mysql_function_query(mysql_connect_ID, str_bigfalse"""");
    return 1;
}

 

забыл сразу сказать в базе данных записывает значение во frak но вот еще что увидел есть какой то frak2 а в моде нет такого и там значение 0 623f6020e04d9_.PNG.af3021ee255095b497ab308133c8d53c.PNG

Edited by Crmpik

Share this post


Link to post

1 answer to this question

  • 0

У вас неверная запись в базу данных:

1 час назад, Crmpik сказал:

SET `Frak` = '%d|%d'

создайте переменную в enum о игроке pRang и столб в базе дынных Rang

после чего сохраняйте не как указано выше, а так:

mysql_format:str_cmd("UPDATE `" #DB_ACCOUNTS "` SET `Frak` = '%d', `Rang` = '%d', `Dol` = '%s', `Dols` = '%s' WHERE `ID` = '%d'",
        pInfo[params[0]][pFrak],
        pInfo[params[0]][pRang],
        pInfo[params[0]][pRang],
        pInfo[params[0]][pDol],
        pInfo[params[0]][pDols],
        pInfo[params[0]][pID]);

После чего поправьте загрузку в базе данных и выдачу лидерки и ранга при спавне

Edited by Sleash`en

Share this post


Link to post
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • Redmondd
      By Redmondd
      При запуске сервера в консоли пишет: Started server on port: 7777, with maxplayers: 500 lanmode is OFF.
      И когда захожу на сервер пишет server didnt respond
       
      ---------- Loaded log file: "server_log.txt". ---------- SA-MP Dedicated Server ---------------------- v0.3.7-R2, (C)2005-2015 SA-MP Team filterscripts = ""  (string) Server Plugins --------------  Loading plugin: mysql   > MySQL plugin R7-2 successfully loaded.   Loaded.  Loading plugin: sscanf  ===============================       sscanf plugin loaded.          Version:  2.8.1    (c) 2012 Alex "Y_Less" Cole  ===============================   Loaded.  Loading plugin: dc_cmd   Daniel's CMD plugin v2.8     (c) 2014 Daniel_Cortez         www.pro-pawn.ru   Loaded.  Loading plugin: streamer *** Streamer Plugin v2.7.9 by Incognito loaded ***   Loaded.  Loaded 4 plugins. Started server on port: 7777, with maxplayers: 500 lanmode is OFF. Filterscripts ---------------   Loaded 0 filterscripts. Подключение к базе данных MYSQL успешно ---------------------------------- --------Redmond RP 01-------- ---------------------------------- Number of vehicle models: 5 Склады загружены успешно Дома (15 шт) загружены успешно