Показано с 1 по 10 из 10

Тема: Вопрос по поводу кнопок далее и назад в диалоговом окне.

  1. #1
    Пользователь
    Регистрация
    18.01.2015
    Возраст
    30
    Сообщений
    10
    Репутация: 10

    Звание: на пути к лучшему

    Вопрос по поводу кнопок далее и назад в диалоговом окне.

    Вообщем, парни, прошу помощи, ибо уже просто не могу решить проблему.
    Суть в том, что нужно загружать на страницу по 20 названий, оно практически так и работает, с мелкими багами, ну как багами, смотрите на скринах...
    Т.е на втором скрине, должно было быть как(по задумке) как только я нажимаю на страницу "Далее", вместо 41,42, должна быть ещё одна кнопка "Далее", и потом как только я её нажму, на следующей странице и будет 41, 42
    Потом нажимаю по кнопке "Назад", вернулся бы в самое начало, вот в этом вся и загвоздка, помогите, пожалуйста....

    Ссылка на первый скрин

    Ссылка на второй скрин

    Для тех у кого может не грузить(но может помочь)
    https://imgur.com/ALvJpbK
    https://imgur.com/ALvJpbK

    PHP код:
    stock OnLoadnFrackCallBack(playerid)// Вызов самого стока
    {
        new 
    query[84];
        
    format(querysizeof(query),"SELECT * FROM `frack_rank` WHERE `ID_Frack`='%d' LIMIT 0,21"PI[playerid][pForma]);
        
    mysql_function_query(MysqlConnectquerytrue"OnLoadFrackCallBack","dd",playerid,PI[playerid][pForma]);
        return 
    1;

    PHP код:
    forward OnLoadFrackCallBack(playerid,forma_check);
    public 
    OnLoadFrackCallBack(playerid,forma_check)// Пришёл ответ из самого стока
    {
        if(
    forma_check != PI[playerid][pForma]) return SCM(playerid,COLOR_RED,"[Position Error]: {FFFFFF}Ваша фракция не совпадает с нужной.");
        new 
    rowsfields;
        
    cache_get_data(rowsfields,MysqlConnect);
        if(
    rows == 0) return SCM(playerid,COLOR_LIGHTBLUE,"[Position Info]: {FFFFFF}Список должностей пуст.");
        new 
    string[400];
        new 
    Names[24],r;
        if(
    rows)
        {
            for(new 
    0rowsi++)
             {
                
    Names[0] = 0;
                
    cache_get_field_content(i"NameRank",Names);
                
    format(stringsizeof(string), "%s%s\n"stringNames),r++;
                if(
    >= 20)break;
            }
            if(
    rows 20format(stringsizeof(string), "%s{FF9900}Далее >>>\n"string);
        }
        
    SPD(playerid622"{FFC800}Список должностей организации"string"Выбор""Назад");
        return 
    1;

    PHP код:
    stock CheckNextRank(playerid,knop)
    {
        if(
    knop == 20FirstBL[playerid] += 20;
        else 
    FirstBL[playerid] -= 20;
        if(
    FirstBL[playerid] < 0)
        {
            
    FirstBL[playerid] = 0;
            return 
    SCM(playerid,COLOR_LIGHTBLUE,"[Position Info]: {FFFFFF}Больше нет созданых должностей.");
        }
        new 
    bstring[95];
        
    format(bstringsizeof(bstring), "SELECT * FROM `frack_rank` WHERE `ID_Frack`='%d' LIMIT %i , 21",PI[playerid][pForma],FirstBL[playerid]);
        
    mysql_function_query(MysqlConnectbstringtrue"LoadRackFrackCallBack","dd",playerid,PI[playerid][pForma]);
        
    SCM(playerid,COLOR_LIGHTBLUE,"[Position Info]: {FFFFFF}Прошло всё дальше");
        return 
    1;

    PHP код:
    forward LoadRackFrackCallBack(playerid,formas);
    public 
    LoadRackFrackCallBack(playerid,formas)
    {
        if(
    formas != PI[playerid][pForma]) return SCM(playerid,COLOR_RED,"[Position Error]: {FFFFFF}Ваша фракция не совпадает с нужной.");
        new 
    rowsfields;
        
    cache_get_data(rowsfields,MysqlConnect);
        if(
    rows == 0) return SCM(playerid,COLOR_LIGHTBLUE,"[Position Info]: {FFFFFF}Список должностей пуст.");
        new 
    string[400];
        new 
    Names[24],r;
        if(
    rows)
        {
            for(new 
    0rowsi++)
             {
                
    Names[0] = 0;
                
    cache_get_field_content(i"NameRank",Names);
                
    format(stringsizeof(string), "%s%s\n"stringNames),r++;
                if(
    >= 20) break;
            }
            if(
    20format(stringsizeof(string), "%s{FF9900}Далее >>>\n"string);
            else if(
    FirstBL[playerid] == 20strcat(string"{FF9900}<<< Назад");
        }
        
    SPD(playerid622"{FFC800}Список должностей организации"string"Выбор""Назад");
        return 
    1;


  2. #2
    Джентльмен лжец Аватар для Fallen A.
    Регистрация
    03.09.2011
    Адрес
    Минск, БССР
    Возраст
    29
    Сообщений
    2,409
    Репутация: 337

    Звание: как роза среди колючек
    Код смотреть не стал, но, судя по всему, не продумана логика кода.
    Советую, прежде чем начинать писать какую-либо систему, начинать с небольших набросков на бумаге в плане логики кода. Сильно упростит реализацию.

  3. #3
    Пользователь
    Регистрация
    18.01.2015
    Возраст
    30
    Сообщений
    10
    Репутация: 10

    Звание: на пути к лучшему
    Цитата Сообщение от Fallen A. Посмотреть сообщение
    Код смотреть не стал, но, судя по всему, не продумана логика кода.
    Советую, прежде чем начинать писать какую-либо систему, начинать с небольших набросков на бумаге в плане логики кода. Сильно упростит реализацию.
    Я именно так и сделал был, этот совет дал мне ещё когда-то Mehanizm, смысл тогда от твоего набитого поста, вообще не понятно если честно.

  4. #4
    ыыыыы Аватар для Mexanizm
    Регистрация
    16.01.2012
    Адрес
    Россия. Воронеж
    Возраст
    30
    Сообщений
    2,450
    Репутация: 287

    Звание: как роза среди колючек
    С OnDialogResponse скинь код, там откуда вызываешь CheckNextRank
    Вернуться назад не получается ?
    Последний раз редактировалось Mexanizm; 26.02.2018 в 00:44.
    Modern RP





  5. #5
    кабанчик :3
    Регистрация
    20.01.2012
    Сообщений
    1,513
    Репутация: 231

    Звание: - весьма и весьма положительная личность
    Два одинаковых публика зачем? И непонятно, что откуда и куда вызывается.
    ...

  6. 1 пользователь сказал cпасибо КабанчиК за это полезное сообщение:

    Mexanizm (26.02.2018)

  7. #6
    ыыыыы Аватар для Mexanizm
    Регистрация
    16.01.2012
    Адрес
    Россия. Воронеж
    Возраст
    30
    Сообщений
    2,450
    Репутация: 287

    Звание: как роза среди колючек
    Как же меня вот это прыгание по пабликам раздражает из за mysql. Я бы такую систему(рангов) держал лучше на sqllite, рядом с серверов. Держать её на стороне внешней бд никто не обязывает. Конечно, дело твоё, но всё же.
    Последний раз редактировалось Mexanizm; 26.02.2018 в 07:16.
    Modern RP





  8. #7
    Пользователь
    Регистрация
    18.01.2015
    Возраст
    30
    Сообщений
    10
    Репутация: 10

    Звание: на пути к лучшему
    Да всё получается вернуть, сам баг видно на скринах

  9. #8
    Джентльмен лжец Аватар для Fallen A.
    Регистрация
    03.09.2011
    Адрес
    Минск, БССР
    Возраст
    29
    Сообщений
    2,409
    Репутация: 337

    Звание: как роза среди колючек
    Цитата Сообщение от Lionely Посмотреть сообщение
    Я именно так и сделал был, этот совет дал мне ещё когда-то Mehanizm, смысл тогда от твоего набитого поста, вообще не понятно если честно.
    Мой набитый пост говорит лишь о том, что кто-то сам не видит логики кода.

  10. #9
    Проверенный Аватар для Джонни Ди
    Регистрация
    12.10.2012
    Адрес
    Тегеран
    Сообщений
    863
    Репутация: 141

    Звание: скоро придёт к известности
    Цитата Сообщение от Fallen A. Посмотреть сообщение
    Мой набитый пост говорит лишь о том, что кто-то сам не видит логики кода.
    Брат, когда и где разборки? Я выезжаю

  11. #10
    Пользователь
    Регистрация
    18.01.2015
    Возраст
    30
    Сообщений
    10
    Репутация: 10

    Звание: на пути к лучшему
    Вообщем ясно, типичная история, как и было на pawno.ru, просто набивают посты, пользы, и подсказок 0, не можете помочь, не заходите в тему, бесите.

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •