Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 7 из 7
  1. #1
    Аватар для Trender
    Пользователь

    Статус
    Оффлайн
    Регистрация
    09.05.2014
    Сообщений
    117
    Репутация:
    -1 ±

    Не сохраняется бизнес

    Суть.
    Я создаю бизнес допустим.
    Код:
    case 183:
    		{
    			if(response)
    			{
    			    TOTALBIZZ++;
    
    				strmid(BizzInfo[TOTALBIZZ][bOwner], "The_State", 0, strlen("The_State"), MAX_PLAYER_NAME);
    				strmid(BizzInfo[TOTALBIZZ][bName], BizzInfo[totalbizz[playerid]][bName], 0, strlen(BizzInfo[totalbizz[playerid]][bName]), 32);
    				BizzInfo[TOTALBIZZ][bID] = TOTALBIZZ;
    				BizzInfo[TOTALBIZZ][bType] = 3;
    				BizzInfo[TOTALBIZZ][bLock] = 1;
    				BizzInfo[TOTALBIZZ][bValue] = strval(inputtext);
    				BizzInfo[TOTALBIZZ][bOwned] = 0;
    				BizzInfo[TOTALBIZZ][bTakings] = 0;
    				BizzInfo[TOTALBIZZ][bProduct] = 0;
    				BizzInfo[TOTALBIZZ][bPriceProd] = 0;
    				BizzInfo[TOTALBIZZ][bTax] = 0;
    				BizzInfo[TOTALBIZZ][bVirtWorld] = TOTALBIZZ+100;
    				BizzInfo[TOTALBIZZ][bEnterX] = BizzInfo[totalbizz[playerid]][bEnterX];
    				BizzInfo[TOTALBIZZ][bEnterY] = BizzInfo[totalbizz[playerid]][bEnterY];
    				BizzInfo[TOTALBIZZ][bEnterZ] = BizzInfo[totalbizz[playerid]][bEnterZ];
    				BizzInfo[TOTALBIZZ][bExitX] = 377.2674;
    				BizzInfo[TOTALBIZZ][bExitY] = -193.0148;
    				BizzInfo[TOTALBIZZ][bExitZ] = 1000.6401;
    
    				format(query, sizeof(query), "INSERT INTO "TABLE_BIZZ" (`ID`,`EX`,`EY`,`EZ`,`Name`,`Owner`,`Value`,`VirtWorld`,`Type`,`Open`,`Tax`) VALUE ('%i', '%f', '%f', '%f', '%s', '%s', '%i', '%i', '%i', '%i', '%i')",
    				BizzInfo[TOTALBIZZ][bID],BizzInfo[TOTALBIZZ][bEnterX],BizzInfo[TOTALBIZZ][bEnterY],BizzInfo[TOTALBIZZ][bEnterZ],BizzInfo[TOTALBIZZ][bName],BizzInfo[TOTALBIZZ][bOwner],BizzInfo[TOTALBIZZ][bValue],BizzInfo[TOTALBIZZ][bVirtWorld],BizzInfo[TOTALBIZZ][bType],BizzInfo[TOTALBIZZ][bLock],BizzInfo[TOTALBIZZ][bTax]);
    				mysql_query(query);
    				format(string, sizeof(string), "Закусочная № %d созданa!",TOTALBIZZ);
    				SCM(playerid, COLOR_GREY,string);
    				new b = TOTALBIZZ;
    				format(dtring, sizeof(dtring),"Tex text text",BizzInfo[b][bName],BizzInfo[b][bValue],BizzInfo[b][bID]);
    				BizzLabel[b] = Create3DTextLabel(dtring, 0xFF0000FF, BizzInfo[b][bEnterX],BizzInfo[b][bEnterY],BizzInfo[b][bEnterZ],30.0,0);
    				BizzInfo[b][bPickup] = CreatePickupAC(1318, 23, BizzInfo[b][bEnterX],BizzInfo[b][bEnterY],BizzInfo[b][bEnterZ]);
    				BizzInfo[b][bPickupExit] = CreatePickupAC(1318, 23, BizzInfo[b][bExitX],BizzInfo[b][bExitY],BizzInfo[b][bExitZ],BizzInfo[b][bVirtWorld]);
    				CreateDynamicMapIcon(BizzInfo[b][bEnterX],BizzInfo[b][bEnterY],BizzInfo[b][bEnterZ], 50, COLOR_GREY, 0, -1, -1, 400.0);
    				BizzInfo[b][bPickupInfo] = CreatePickupAC(19132, 19, 379.3227,-190.4464,1000.6328,BizzInfo[b][bVirtWorld]);
    				totalbizz[playerid] = 0;
    				DeletePVar(playerid, "BizzPrice");
    				return 1;
    			}
    			else
    			{
    				totalbizz[playerid] = 0;
    				DeletePVar(playerid, "BizzPrice");
    				SCM(playerid,COLOR_GREY,"Создание бизнеса отменено!");
    			}
    		}
    Вроде бы всё создалось, но после рестарта сервера всё пропадает....
    В чём вся суть?

  2. #2
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    включите логирование mysql (mysql_debug) и после вызова запроса покажите логи (mysql_log)
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  3. Пользователь сказал cпасибо:
    Trender (26.05.2014)
  4. #3
    Аватар для Trender
    Пользователь

    Статус
    Оффлайн
    Регистрация
    09.05.2014
    Сообщений
    117
    Репутация:
    -1 ±
    DELL
    Последний раз редактировалось Trender; 26.05.2014 в 20:47.

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

    Статус
    Оффлайн
    Регистрация
    07.03.2014
    Сообщений
    331
    Репутация:
    47 ±
    Вот ваша ошибка:
    PHP код:
    [15:55:54CMySQLHandler::Query(INSERT INTO bizz (`ID`,`EX`,`EY`,`EZ`,`Name`,`Owner`,`Value`,`VirtWorld`,`Type`,`Open`,`Tax`) VALUE ('42''2331.808593''75.069732''26.620975''Pizza Palomino Creek''The_State''350000''142''3''1''0')) - An error has occured. (Error ID1062Duplicate entry '42' for key 1
    Похоже что у вас в БД, уже есть идом 42 бизнес. Потому я думаю что нужно прибавлять +1 от всего количества бизнесов.
    Чисто мое мнение, пробуйте.
    PHP код:
    case 183:
    {
        if(
    response)
        {
            
    TOTALBIZZ++;

            
    strmid(BizzInfo[TOTALBIZZ][bOwner], "The_State"0strlen("The_State"), MAX_PLAYER_NAME);
            
    strmid(BizzInfo[TOTALBIZZ][bName], BizzInfo[totalbizz[playerid]][bName], 0strlen(BizzInfo[totalbizz[playerid]][bName]), 32);
            
    BizzInfo[TOTALBIZZ][bID] = TOTALBIZZ+1;
            
    BizzInfo[TOTALBIZZ][bType] = 3;
            
    BizzInfo[TOTALBIZZ][bLock] = 1;
            
    BizzInfo[TOTALBIZZ][bValue] = strval(inputtext);
            
    BizzInfo[TOTALBIZZ][bOwned] = 0;
            
    BizzInfo[TOTALBIZZ][bTakings] = 0;
            
    BizzInfo[TOTALBIZZ][bProduct] = 0;
            
    BizzInfo[TOTALBIZZ][bPriceProd] = 0;
            
    BizzInfo[TOTALBIZZ][bTax] = 0;
            
    BizzInfo[TOTALBIZZ][bVirtWorld] = TOTALBIZZ+100;
            
    BizzInfo[TOTALBIZZ][bEnterX] = BizzInfo[totalbizz[playerid]][bEnterX];
            
    BizzInfo[TOTALBIZZ][bEnterY] = BizzInfo[totalbizz[playerid]][bEnterY];
            
    BizzInfo[TOTALBIZZ][bEnterZ] = BizzInfo[totalbizz[playerid]][bEnterZ];
            
    BizzInfo[TOTALBIZZ][bExitX] = 377.2674;
            
    BizzInfo[TOTALBIZZ][bExitY] = -193.0148;
            
    BizzInfo[TOTALBIZZ][bExitZ] = 1000.6401;

            
    format(querysizeof(query), "INSERT INTO "TABLE_BIZZ" (`ID`,`EX`,`EY`,`EZ`,`Name`,`Owner`,`Value`,`VirtWorld`,`Type`,`Open`,`Tax`) VALUE ('%i', '%f', '%f', '%f', '%s', '%s', '%i', '%i', '%i', '%i', '%i')",
            
    BizzInfo[TOTALBIZZ][bID],BizzInfo[TOTALBIZZ][bEnterX],BizzInfo[TOTALBIZZ][bEnterY],BizzInfo[TOTALBIZZ][bEnterZ],BizzInfo[TOTALBIZZ][bName],BizzInfo[TOTALBIZZ][bOwner],BizzInfo[TOTALBIZZ][bValue],BizzInfo[TOTALBIZZ][bVirtWorld],BizzInfo[TOTALBIZZ][bType],BizzInfo[TOTALBIZZ][bLock],BizzInfo[TOTALBIZZ][bTax]);
            
    mysql_query(query);
            
    format(stringsizeof(string), "Закусочная № %d созданa!",TOTALBIZZ);
            
    SCM(playeridCOLOR_GREY,string);
            new 
    TOTALBIZZ;
            
    format(dtringsizeof(dtring),"Tex text text",BizzInfo[b][bName],BizzInfo[b][bValue],BizzInfo[b][bID]);
            
    BizzLabel[b] = Create3DTextLabel(dtring0xFF0000FFBizzInfo[b][bEnterX],BizzInfo[b][bEnterY],BizzInfo[b][bEnterZ],30.0,0);
            
    BizzInfo[b][bPickup] = CreatePickupAC(131823BizzInfo[b][bEnterX],BizzInfo[b][bEnterY],BizzInfo[b][bEnterZ]);
            
    BizzInfo[b][bPickupExit] = CreatePickupAC(131823BizzInfo[b][bExitX],BizzInfo[b][bExitY],BizzInfo[b][bExitZ],BizzInfo[b][bVirtWorld]);
            
    CreateDynamicMapIcon(BizzInfo[b][bEnterX],BizzInfo[b][bEnterY],BizzInfo[b][bEnterZ], 50COLOR_GREY0, -1, -1400.0);
            
    BizzInfo[b][bPickupInfo] = CreatePickupAC(1913219379.3227,-190.4464,1000.6328,BizzInfo[b][bVirtWorld]);
            
    totalbizz[playerid] = 0;
            
    DeletePVar(playerid"BizzPrice");
            return 
    1;
        }
        else
        {
            
    totalbizz[playerid] = 0;
            
    DeletePVar(playerid"BizzPrice");
            
    SCM(playerid,COLOR_GREY,"Создание бизнеса отменено!");
        }

    "Власть, кровь, няш-мяш, кровь, власть, Крым наш!" - (c) Наталья Поклонская.

    Критик должен быть готов и способен в любой момент и по первому требованию занять место критикуемого им и выполнять его дело продуктивно и компетентно. В противном случае критика превращается в наглую, самодовлеющую силу и становится тормозом на пути прогресса. (с) AXE

  6. Пользователь сказал cпасибо:
    Trender (26.05.2014)
  7. #5
    Аватар для Trender
    Пользователь

    Статус
    Оффлайн
    Регистрация
    09.05.2014
    Сообщений
    117
    Репутация:
    -1 ±
    Цитата Сообщение от underwoker Посмотреть сообщение
    Вот ваша ошибка:
    PHP код:
    [15:55:54CMySQLHandler::Query(INSERT INTO bizz (`ID`,`EX`,`EY`,`EZ`,`Name`,`Owner`,`Value`,`VirtWorld`,`Type`,`Open`,`Tax`) VALUE ('42''2331.808593''75.069732''26.620975''Pizza Palomino Creek''The_State''350000''142''3''1''0')) - An error has occured. (Error ID1062Duplicate entry '42' for key 1
    Похоже что у вас в БД, уже есть идом 42 бизнес. Потому я думаю что нужно прибавлять +1 от всего количества бизнесов.
    Чисто мое мнение, пробуйте.
    PHP код:
    case 183:
    {
        if(
    response)
        {
            
    TOTALBIZZ++;

            
    strmid(BizzInfo[TOTALBIZZ][bOwner], "The_State"0strlen("The_State"), MAX_PLAYER_NAME);
            
    strmid(BizzInfo[TOTALBIZZ][bName], BizzInfo[totalbizz[playerid]][bName], 0strlen(BizzInfo[totalbizz[playerid]][bName]), 32);
            
    BizzInfo[TOTALBIZZ][bID] = TOTALBIZZ+1;
            
    BizzInfo[TOTALBIZZ][bType] = 3;
            
    BizzInfo[TOTALBIZZ][bLock] = 1;
            
    BizzInfo[TOTALBIZZ][bValue] = strval(inputtext);
            
    BizzInfo[TOTALBIZZ][bOwned] = 0;
            
    BizzInfo[TOTALBIZZ][bTakings] = 0;
            
    BizzInfo[TOTALBIZZ][bProduct] = 0;
            
    BizzInfo[TOTALBIZZ][bPriceProd] = 0;
            
    BizzInfo[TOTALBIZZ][bTax] = 0;
            
    BizzInfo[TOTALBIZZ][bVirtWorld] = TOTALBIZZ+100;
            
    BizzInfo[TOTALBIZZ][bEnterX] = BizzInfo[totalbizz[playerid]][bEnterX];
            
    BizzInfo[TOTALBIZZ][bEnterY] = BizzInfo[totalbizz[playerid]][bEnterY];
            
    BizzInfo[TOTALBIZZ][bEnterZ] = BizzInfo[totalbizz[playerid]][bEnterZ];
            
    BizzInfo[TOTALBIZZ][bExitX] = 377.2674;
            
    BizzInfo[TOTALBIZZ][bExitY] = -193.0148;
            
    BizzInfo[TOTALBIZZ][bExitZ] = 1000.6401;

            
    format(querysizeof(query), "INSERT INTO "TABLE_BIZZ" (`ID`,`EX`,`EY`,`EZ`,`Name`,`Owner`,`Value`,`VirtWorld`,`Type`,`Open`,`Tax`) VALUE ('%i', '%f', '%f', '%f', '%s', '%s', '%i', '%i', '%i', '%i', '%i')",
            
    BizzInfo[TOTALBIZZ][bID],BizzInfo[TOTALBIZZ][bEnterX],BizzInfo[TOTALBIZZ][bEnterY],BizzInfo[TOTALBIZZ][bEnterZ],BizzInfo[TOTALBIZZ][bName],BizzInfo[TOTALBIZZ][bOwner],BizzInfo[TOTALBIZZ][bValue],BizzInfo[TOTALBIZZ][bVirtWorld],BizzInfo[TOTALBIZZ][bType],BizzInfo[TOTALBIZZ][bLock],BizzInfo[TOTALBIZZ][bTax]);
            
    mysql_query(query);
            
    format(stringsizeof(string), "Закусочная № %d созданa!",TOTALBIZZ);
            
    SCM(playeridCOLOR_GREY,string);
            new 
    TOTALBIZZ;
            
    format(dtringsizeof(dtring),"Tex text text",BizzInfo[b][bName],BizzInfo[b][bValue],BizzInfo[b][bID]);
            
    BizzLabel[b] = Create3DTextLabel(dtring0xFF0000FFBizzInfo[b][bEnterX],BizzInfo[b][bEnterY],BizzInfo[b][bEnterZ],30.0,0);
            
    BizzInfo[b][bPickup] = CreatePickupAC(131823BizzInfo[b][bEnterX],BizzInfo[b][bEnterY],BizzInfo[b][bEnterZ]);
            
    BizzInfo[b][bPickupExit] = CreatePickupAC(131823BizzInfo[b][bExitX],BizzInfo[b][bExitY],BizzInfo[b][bExitZ],BizzInfo[b][bVirtWorld]);
            
    CreateDynamicMapIcon(BizzInfo[b][bEnterX],BizzInfo[b][bEnterY],BizzInfo[b][bEnterZ], 50COLOR_GREY0, -1, -1400.0);
            
    BizzInfo[b][bPickupInfo] = CreatePickupAC(1913219379.3227,-190.4464,1000.6328,BizzInfo[b][bVirtWorld]);
            
    totalbizz[playerid] = 0;
            
    DeletePVar(playerid"BizzPrice");
            return 
    1;
        }
        else
        {
            
    totalbizz[playerid] = 0;
            
    DeletePVar(playerid"BizzPrice");
            
    SCM(playerid,COLOR_GREY,"Создание бизнеса отменено!");
        }

    От души бро :3

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

    Статус
    Оффлайн
    Регистрация
    07.03.2014
    Сообщений
    331
    Репутация:
    47 ±
    Цитата Сообщение от Trender Посмотреть сообщение
    От души бро :3
    А работает?
    "Власть, кровь, няш-мяш, кровь, власть, Крым наш!" - (c) Наталья Поклонская.

    Критик должен быть готов и способен в любой момент и по первому требованию занять место критикуемого им и выполнять его дело продуктивно и компетентно. В противном случае критика превращается в наглую, самодовлеющую силу и становится тормозом на пути прогресса. (с) AXE

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

    Статус
    Оффлайн
    Регистрация
    09.05.2014
    Сообщений
    117
    Репутация:
    -1 ±
    Это я накосячил просто :D
    Теперь всё отлично работает, но всё равно спасибо, за то, что отозвались.

 

 

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

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

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

Ваши права

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