Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.

Реклама



**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 100руб/мес, Текстовая 50руб/мес.
Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 17

Тема: Склад | MySQL

  1. #1
    Аватар для Skipter
    Пользователь

    Статус
    Оффлайн
    Регистрация
    08.10.2016
    Сообщений
    16
    Репутация:
    0 ±

    Склад | MySQL

    Здравствуйте, пользователи данного форума!
    - Запись в таблицу происходит с новой строки(если использую INSERT, а если UPDATE - не записывает)
    - Не загружает с таблицы
    Код HTML:
    UPDATE `ferm` SET `Warehouse` = '%i' WHERE `ID` = '1' // так записываю
    // ID в базе по умолчанию 1
    Код HTML:
    mysql_function_query(Connect, "SELECT * FROM `ferm` WHERE `ID` = '1'", true, "LoadFerm", ""); // OnGameModeInit
    stock LoadFerm()
    {
            new str[100]; // увеличивал, ноль реакции
            cache_get_field_content_int(0, !"Warehouse", str);
            ferm[0][fSklad] = strval(str);
            // Пробовал обновлять 3D текст - все так же.
    }
    Подключил debug
    [16:12:57] [DEBUG] mysql_tquery - connection: 1, query: "UPDATE `ferm` SET `Warehouse` = '60' WHERE `ID` = '1'", callback: "(null)", format: "(null)"
    [16:12:57] [DEBUG] CMySQLQuery::Execute[] - starting query execution
    [16:12:57] [DEBUG] CMySQLQuery::Execute[] - query was successfully executed within 0.710 milliseconds
    [16:12:57] [DEBUG] CMySQLQuery::Execute[] - no callback specified, skipping result saving

  2. #2
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    985
    Репутация:
    69 ±
    INSERT - создание/добавление
    UPDATE - обновление
    [Античит] Invisible Fly Hack
    [Античит] Weapon/Ammo Hack
    [Function] ResetPlayerWeaponSlot
    [Function] FIX_SetPlayerAmmo

  3. #3
    Аватар для Pa4enka
    Пользователь

    Статус
    Оффлайн
    Регистрация
    22.04.2016
    Сообщений
    20
    Репутация:
    4 ±
    *удалено
    Последний раз редактировалось Pa4enka; 08.10.2016 в 19:58.

  4. #4
    Аватар для Skipter
    Пользователь

    Статус
    Оффлайн
    Регистрация
    08.10.2016
    Сообщений
    16
    Репутация:
    0 ±
    Цитата Сообщение от vovandolg Посмотреть сообщение
    INSERT - создание/добавление
    UPDATE - обновление
    Я знаю. UPDATE использую. А INSERT использовал ради теста

  5. #5
    Аватар для Redsan
    Пользователь

    Статус
    Оффлайн
    Регистрация
    07.06.2016
    Адрес
    Minsk, Belarus
    Сообщений
    59
    Репутация:
    14 ±
    Используйте public а не stock при загрузке. А насчет обновления данных, покажите полный код.
    Последний раз редактировалось Redsan; 08.10.2016 в 20:13.

  6. #6
    Аватар для Skipter
    Пользователь

    Статус
    Оффлайн
    Регистрация
    08.10.2016
    Сообщений
    16
    Репутация:
    0 ±
    Цитата Сообщение от Redsan Посмотреть сообщение
    Используйте public а не stock при загрузке. А насчет обновления данных, покажите полный код.
    Точно же...

    Код HTML:
    static const m_sql[] = "UPDATE `ferm` SET `Warehouse` = '%i' WHERE `ID` = '1'";
    new f_sql[sizeof(m_sql)-2+10];
    format(f_sql, sizeof f_sql, m_sql, ferm[0][fSklad]);
    mysql_function_query(Connect, f_sql, true, "", "");
    Ну и еще обновления 3D text. Это я думаю не стоит кидать т.к обновляет отлично

  7. #7
    Аватар для Redsan
    Пользователь

    Статус
    Оффлайн
    Регистрация
    07.06.2016
    Адрес
    Minsk, Belarus
    Сообщений
    59
    Репутация:
    14 ±
    Цитата Сообщение от Skipter Посмотреть сообщение
    Точно же...

    Код HTML:
    static const m_sql[] = "UPDATE `ferm` SET `Warehouse` = '%i' WHERE `ID` = '1'";
    new f_sql[sizeof(m_sql)-2+10];
    format(f_sql, sizeof f_sql, m_sql, ferm[0][fSklad]);
    mysql_function_query(Connect, f_sql, true, "", "");
    Ну и еще обновления 3D text. Это я думаю не стоит кидать т.к обновляет отлично
    Оператор sizeof при форматировании неправильно используете, вот так должно работать:
    PHP код:
    static const m_sql[] = "UPDATE `ferm` SET `Warehouse` = '%i' WHERE `ID` = '1'";
    new 
    f_sql[sizeof(m_sql)-2+10];
    format(f_sqlsizeof(f_sql), m_sqlferm[0][fSklad]);
    mysql_function_query(Connectf_sqltrue""""); 
    Последний раз редактировалось Redsan; 08.10.2016 в 21:17.

  8. #8
    Аватар для Skipter
    Пользователь

    Статус
    Оффлайн
    Регистрация
    08.10.2016
    Сообщений
    16
    Репутация:
    0 ±
    Цитата Сообщение от Redsan Посмотреть сообщение
    Оператор sizeof при форматировании неправильно используете, вот так должно работать:
    PHP код:
    static const m_sql[] = "UPDATE `ferm` SET `Warehouse` = '%i' WHERE `ID` = '1'";
    new 
    f_sql[sizeof(m_sql)-2+10];
    format(f_sqlsizeof(f_sql), m_sqlferm[0][fSklad]);
    mysql_function_query(Connectf_sqltrue""""); 
    Нет, к сожалению, Вы ошибаетесь. sizeof можно так использовать. Сделал по обычному sizeof(f_sql) проблема не решилась

  9. #9
    Аватар для Skipter
    Пользователь

    Статус
    Оффлайн
    Регистрация
    08.10.2016
    Сообщений
    16
    Репутация:
    0 ±
    В общем, вижу никто не знает причины. По этому сделал так: записал через Insert, в базу записалось, переделал на UPDATE, перезапустил сервер. Все работает. Redsan отдельное спасибо!!!

    Может кто поймет в ошибка, напишите пожалуйста.

  10. #10
    Аватар для Geebrox
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.08.2015
    Адрес
    Ташкент
    Сообщений
    177
    Репутация:
    53 ±
    Нужно создать 2 функции, 1 для создание записи в таблице (INSERT) и 2 для обновление записи (UPDATE). И вызывать их каждый раз по своему назначению
    Или это все можно сделать в 1 функции, если передавать определенное значение для UPDATE и для INSERT.
    Пример:

    PHP код:
    stock func_name(argsupdate)
    {
        if(
    update)
        {
            
    //обновляем запись в таблице
        
    }
        else
        {
            
    //создаем новый запись в таблице
        
    }
        return 
    1;

    Последний раз редактировалось Geebrox; 08.10.2016 в 22:37.

 

 
Страница 1 из 2 12 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

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