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

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Сообщений
    161
    Репутация:
    3 ±

    Вопрос по поводу сохранения MySQL

    Доброго времени суток форумчане Pro-Pawn
    Начал переделывать сохранение аккаунтов, и столкнулся с вот какой проблемой..

    PHP код:
            new weaponstr[500];
            new 
    query[600],str[600];
            for(new 
    x13++)
            {
                new 
    gunammoGetPlayerWeaponData(playeridxgunammo);
                
    format(weaponstrsizeof(weaponstr), "%s%d %d ",weaponstr, (gun<PlayerInfo[playerid][Weapon][x])?gun:PlayerInfo[playerid][Weapon][x], (ammo<PlayerInfo[playerid][Ammo][x])?ammo:PlayerInfo[playerid][Ammo][x]);
            }
            
    acc_str_strcat(querysizeof(query), "Weapons"weaponstr); 
    Делаем сохранение оружия в бд.
    Не понимаю как сделать по другому сохранение...

    PHP код:
    stock acc_str_strcat(query[], lenname[], str[])
    {
        new 
    string[256];
        
    format(stringsizeof(string), "`%s` = '%s',",namestr);
        
    strcat(querystringlen);
        return 
    true;

    Избавляюсь от данного кода.

    Пример моего сохранения аккаунта

    PHP код:
    stock SavePlayer(playerid)
    {
        if(
    gPlayerLogged[playerid] == true && !ServerRestarted)
        {
            new 
    query[600],str[600];
            new 
    FloatHPdiscon;
            
    GetPlayerHealth(playeridHPdiscon);
            
    strcat(query"UPDATE acc SET ");
            
    mysql_format(MysqlConnect,strsizeof(str), "pLevel='%d',pExp='%d',player_skin='%d',frack_skin='%d',money='%d',pHeal='%f'",
            
    PI[playerid][pLevel],
            
    PI[playerid][pExp],
            
    PI[playerid][pPlayerSkin],
            
    PI[playerid][pFrackSkin],
            
    PI[playerid][pMoney] = GetSRVMoney(playerid),
            
    PI[playerid][pHeal] = HPdiscon);
            
    strcat(querystr);
            
    mysql_query(MysqlConnectqueryfalse);
        }
        return 
    1;


  2. #2
    Аватар для Pyce[X]
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.06.2014
    Сообщений
    6
    Репутация:
    1 ±
    WHERE `Name` Меняй на свое!
    PHP код:
    stock SavePlayer(playerid)
    {
        if(
    gPlayerLogged[playerid] == false) return true;
        new 
    query[250],str[64],nname[MAX_PLAYER_NAME+1];
        new 
    FloatHPdiscon;
        
    GetPlayerHealth(playeridHPdiscon);
        
    GetPlayerName(playeridnnameMAX_PLAYER_NAME);
        
    format(str,sizeof(str),"UPDATE `acc` SET "),strcat(query,str);
        
    format(str,sizeof(str),"`pLevel` = '%i',",PI[playerid][pLevel]),strcat(query,str);
        
    format(str,sizeof(str),"`pExp` = '%i',",PI[playerid][pExp]),strcat(query,str);
        
    format(str,sizeof(str),"`player_skin` = '%i',",PI[playerid][pPlayerSkin]),strcat(query,str);
        
    format(str,sizeof(str),"`frack_skin` = '%i',",PI[playerid][pFrackSkin]),strcat(query,str);
        
    format(str,sizeof(str),"`money` = '%i',",GetSRVMoney(playerid)),strcat(query,str);
        
    format(str,sizeof(str),"`pHeal` = '%f' ",HPdiscon),strcat(query,str);
        
    format(str,sizeof(str),"WHERE `Name` = '%s'",nname),strcat(query,str);
        
    mysql_query(MysqlConnectqueryfalse);
        return 
    true;


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

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Сообщений
    161
    Репутация:
    3 ±
    Цитата Сообщение от Pyce[X] Посмотреть сообщение
    WHERE `Name` Меняй на свое!
    PHP код:
    stock SavePlayer(playerid)
    {
        if(
    gPlayerLogged[playerid] == false) return true;
        new 
    query[250],str[64],nname[MAX_PLAYER_NAME+1];
        new 
    FloatHPdiscon;
        
    GetPlayerHealth(playeridHPdiscon);
        
    GetPlayerName(playeridnnameMAX_PLAYER_NAME);
        
    format(str,sizeof(str),"UPDATE `acc` SET "),strcat(query,str);
        
    format(str,sizeof(str),"`pLevel` = '%i',",PI[playerid][pLevel]),strcat(query,str);
        
    format(str,sizeof(str),"`pExp` = '%i',",PI[playerid][pExp]),strcat(query,str);
        
    format(str,sizeof(str),"`player_skin` = '%i',",PI[playerid][pPlayerSkin]),strcat(query,str);
        
    format(str,sizeof(str),"`frack_skin` = '%i',",PI[playerid][pFrackSkin]),strcat(query,str);
        
    format(str,sizeof(str),"`money` = '%i',",GetSRVMoney(playerid)),strcat(query,str);
        
    format(str,sizeof(str),"`pHeal` = '%f' ",HPdiscon),strcat(query,str);
        
    format(str,sizeof(str),"WHERE `Name` = '%s'",nname),strcat(query,str);
        
    mysql_query(MysqlConnectqueryfalse);
        return 
    true;

    Ты не понял, аккаунты у меня сохраняются, не сохраняется только оружие.

 

 

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

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

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

Ваши права

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