22:08
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 1 из 1
  • 1
Модератор форума: AXE, Weddew  
mysql сохранение аккаунта
hitmanyДата: Понедельник, 11.04.2011, 16:12 | Сообщение # 1
Новенький
Группа: Продвинутые
Сообщений: 36
Награды: 0
Город: Moscow
Репутация: -5
Замечания: 0%
Статус:
мод larp
аккаунты сохраняются через public OnPlayerUpdateEx(playerid)
у аккаунта 225 опций(PlayerInfo)

значение MAX_STRING 255,больше 2000 не воспринимает
отрывок фу-ции

Code
public OnPlayerUpdateEx(playerid)
{
MySQLCheckConnection();
new query[MAX_STRING];
format(query, MAX_STRING, "UPDATE players SET ");
MySQLUpdatePlayerStr(query, PlayerInfo[playerid][pSQLID], "Password", PlayerInfo[playerid][pKey]); //соединяет через strcat ,их 225
MySQLUpdatePlayerInt(query, PlayerInfo[playerid][pSQLID], "pLevel", PlayerInfo[playerid][pLevel]);
MySQLUpdatePlayerInt(query, PlayerInfo[playerid][pSQLID], "pSpawn", PlayerInfo[playerid][pSpawn]);
MySQLUpdateFinish(query, PlayerInfo[playerid][pSQLID]);
}

получается очень большой запрос,и из-за ограничения запрос отрезается,сервер падает
как решить проблему?

ZiGGiДата: Понедельник, 11.04.2011, 16:56 | Сообщение # 2
Мастер джэдай
Группа: Продвинутые
Сообщений: 2652
Награды: 34
Город: St. Petersburg
Репутация: 2102
Замечания: 20%
Статус:
Quote (hitmany)
значение MAX_STRING 255,больше 2000 не воспринимает

new query[1024]; // увеличивай по мере надобности...
format(query, sizeof(query), "UPDATE players SET ");



Бложе
[indent]Мой блог
Уроки по Pawn
[/indent]

Open-GTO
[indent]Блог разработчиков
GitHub: https://github.com/Open-GTO/Open-GTO
Сборки мода с сервером тут
[/indent]
hitmanyДата: Понедельник, 11.04.2011, 17:01 | Сообщение # 3
Новенький
Группа: Продвинутые
Сообщений: 36
Награды: 0
Город: Moscow
Репутация: -5
Замечания: 0%
Статус:
2048 на new query зависает
ZiGGiДата: Понедельник, 11.04.2011, 17:40 | Сообщение # 4
Мастер джэдай
Группа: Продвинутые
Сообщений: 2652
Награды: 34
Город: St. Petersburg
Репутация: 2102
Замечания: 20%
Статус:
Quote (hitmany)
2048 на new query зависает

что зависает?



Бложе
[indent]Мой блог
Уроки по Pawn
[/indent]

Open-GTO
[indent]Блог разработчиков
GitHub: https://github.com/Open-GTO/Open-GTO
Сборки мода с сервером тут
[/indent]
GoshikДата: Понедельник, 11.04.2011, 18:48 | Сообщение # 5
Уверенный в себе
Группа: Пользователи
Сообщений: 280
Награды: 1
Город: ---
Репутация: 18
Замечания: 60%
Статус:
hitmany, сохраняй только переменные, которые используются постоянно (деньги, респекты), остальные типа скилов, админки, лидерки сохраняй только при их изменении прямо в процессе игры... ну на крайняк раздели запрос на несколько маленьких
hitmanyДата: Среда, 13.04.2011, 19:12 | Сообщение # 6
Новенький
Группа: Продвинутые
Сообщений: 36
Награды: 0
Город: Moscow
Репутация: -5
Замечания: 0%
Статус:
по кускам падает,сделал чтоб сохранял основное - падает,чтобы отследить как происходит процесс сохранения писал на каждом шагу printf("шаг1'); ит.д.
падает на выполнении запроса samp_mysql_query(query);
но данные прекрасно считываются при входе

ZiGGiДата: Среда, 13.04.2011, 19:25 | Сообщение # 7
Мастер джэдай
Группа: Продвинутые
Сообщений: 2652
Награды: 34
Город: St. Petersburg
Репутация: 2102
Замечания: 20%
Статус:
Quote (hitmany)
падает на выполнении запроса samp_mysql_query(query);

какой плагин?
и функцию MySQLUpdateFinish покажи



Бложе
[indent]Мой блог
Уроки по Pawn
[/indent]

Open-GTO
[indent]Блог разработчиков
GitHub: https://github.com/Open-GTO/Open-GTO
Сборки мода с сервером тут
[/indent]
hitmanyДата: Среда, 13.04.2011, 19:51 | Сообщение # 8
Новенький
Группа: Продвинутые
Сообщений: 36
Награды: 0
Город: Moscow
Репутация: -5
Замечания: 0%
Статус:
Code
public MySQLUpdateFinish(query[], sqlplayerid[]) // by LordMan
{
   if (strcmp(query, "WHERE Name=", false) == 0) samp_mysql_query(query);
   else
   {
    new whereclause[32];
    format(whereclause, sizeof(whereclause), " WHERE Name='%d'", sqlplayerid);
    strcat(query, whereclause, MAX_STRING);
    samp_mysql_query(query);
    format(query, MAX_STRING, "UPDATE players SET ");
   }
   return 1;
}

SAMP-MySQL v0.15 by [RAZ]ADreNaLiNe-DJ



Сообщение отредактировал hitmany - Среда, 13.04.2011, 20:12
GoshikДата: Среда, 13.04.2011, 21:36 | Сообщение # 9
Уверенный в себе
Группа: Пользователи
Сообщений: 280
Награды: 1
Город: ---
Репутация: 18
Замечания: 60%
Статус:
hitmany, выкинь этот плагин, используй http://forum.sa-mp.com/showthread.php?t=122983
ZiGGiДата: Четверг, 14.04.2011, 07:07 | Сообщение # 10
Мастер джэдай
Группа: Продвинутые
Сообщений: 2652
Награды: 34
Город: St. Petersburg
Репутация: 2102
Замечания: 20%
Статус:
hitmany, да, Goshik, прав, дело в плагине... С этим плагином не встречал проблем ;)


Бложе
[indent]Мой блог
Уроки по Pawn
[/indent]

Open-GTO
[indent]Блог разработчиков
GitHub: https://github.com/Open-GTO/Open-GTO
Сборки мода с сервером тут
[/indent]
hitmanyДата: Понедельник, 25.04.2011, 17:26 | Сообщение # 11
Новенький
Группа: Продвинутые
Сообщений: 36
Награды: 0
Город: Moscow
Репутация: -5
Замечания: 0%
Статус:
стабильно на линукс работает G-sTyLeZzZ


Сообщение отредактировал hitmany - Понедельник, 25.04.2011, 18:01
  • Страница 1 из 1
  • 1
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua