Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 1 из 2 1 2 ПоследняяПоследняя
Показано с 1 по 10 из 20
  1. #1
    Аватар для Mr.Dark
    Пользователь

    Статус
    Оффлайн
    Регистрация
    03.10.2016
    Адрес
    Алма-Ата
    Сообщений
    56
    Репутация:
    2 ±

    MySQL как записать данные в таблицу

    Привет ув.формучани меня зовут Гена сегодня я пришёл к вам на портал
    чтобы найти ответ на свой вопрос надеюсь вы мне подскажите .

    Вопрос: как записать данные в таблицу?

    Я пытасю писать мод на MySQL все вроде нормально ну при создании лидерок я зашел в тупик в котором хожу 4 дня
    проблема в том что при использовании команды /makeleader выдаться лидерка ну при выходи не сохраняется в БД

    но если в самой БД поставить значения pLeader = 7 то все работает !

    моя команда (Автор Unreal =) )
    PHP код:
    if(strcmp(cmd"/makeleader"true) == 0){
        if(
    IsPlayerConnected(playerid)){
        
    tmp strtok(cmdtextidx);
        if(!
    strlen(tmp)){
        
    SendClientMessage(playerid, -1"{AAC5E3}[!]Èñïîëüçóéòå: /makeleader [ID] [Íîìåð îðãàíèçàöèè]");return 1;}
        new 
    para1;
        new 
    level;
        
    para1 ReturnUser(tmp);
        
    tmp strtok(cmdtextidx);
        
    level strval(tmp);
        if(
    level 10 || level 0) { SendClientMessage(playerid, -1""); return 1; }
        if (
    Player[playerid][pAdmin] >= 4){
        if(
    IsPlayerConnected(para1)){
        if(
    para1 != INVALID_PLAYER_ID){
        
    GetPlayerName(para1giveplayersizeof(giveplayer));
        
    GetPlayerName(playeridsendernamesizeof(sendername));
        new 
    otext[50];
        if(
    level == 0){
        
    SetPlayerSkin(para1Player[para1][pModel]);
        
    Player[para1][pRang] = 0;
        
    Player[para1][pMember] = 0;
        
    Player[para1][pLeader] = 0;
        
    format(stringsizeof string"{AAC5E3}[!]Âàñ óâîëèëè èç îðãàíèçàöèè"giveplayer);
        
    SendClientMessage(para1, -1string);
        
    SetPlayerToTeamColor(para1);return 1;}
        else if(
    level == 1) { Player[para1][pSkin] = 17otext "Ìýðèÿ San-Fiero"Player[para1][pRang] = 10; } //Adm.prez
        
    else if(level == 2) { Player[para1][pSkin] = 70otext "Centr Hospital"Player[para1][pRang] = 10; } //Adm.prez
        
    else if(level == 3) { Player[para1][pSkin] = 288otext "Police Deportament"Player[para1][pRang] = 10; } //Adm.prez
        
    else if(level == 4) { Player[para1][pSkin] = 286otext "F.B.I"Player[para1][pRang] = 10; } //Adm.prez
        
    else if(level == 5) { Player[para1][pSkin] = 61otext "Ìîðïåõè"Player[para1][pRang] = 10; } //Adm.prez
        
    else if(level == 6) { Player[para1][pSkin] = 120otext "Ykudza"Player[para1][pRang] = 10; } //Adm.prez
        
    else if(level == 7) { Player[para1][pSkin] = 98otext "Èòàëüÿíñêàÿ ìàôèÿ"Player[para1][pRang] = 10; } //Adm.prez
        
    else if(level == 8) { Player[para1][pSkin] = 126otext "Ðóññêàÿ ìàôèÿ"Player[para1][pRang] = 10; } //Adm.prez
        
    else if(level == 9) { Player[para1][pSkin] = 228otext "Ðàäèî"Player[para1][pRang] = 10; } //Adm.prez
        
    Player[para1][pLeader] = level;
        
    Player[para1][pMember] = level;
        
    format(stringsizeof(string), "{006600}Âû íàçíà÷èëè %s ðóêîâîäèòü îðãàíèçàöèåé <<%s>>"giveplayer,otext);
        
    SendClientMessage(playerid, -1string);
        
    format(stringsizeof(string), "{006600}Àäìèíèñòðàòîð %s íàçíà÷èë âàñ ðóêîâîäèòü îðãàíèçàöèåé <<%s>>",sendername ,otext);
        
    SendClientMessage(para1, -1string);
        
    format(stringsizeof(string), "{006600}Äîñòóïíû íîâûå êîìàíäû: /invite | /giverank",sendername ,otext);
        
    SendClientMessage(para1, -1string);
        
    SetPlayerSkin(para1Player[para1][pSkin]);
        
    SetPlayerToTeamColor(para1);
         
    SaveAccount(playerid);
        
    Player[playerid][pJob] = 0;
        }}}else{
    SendClientMessage(playerid, -1"{AAC5E3}[!]Äàííàÿ êîìàíäà äàñòóïíà ñ 5 ðàíãà");}}
        return 
    1;} 
    и Stock

    PHP код:
    stock SaveAccount(playerid)
    {
        new 
    query_string[(21)+(15+11)+(19+MAX_PLAYER_NAME)+(17+30)+(11+3)+(10+3)+(9+1)+(11+1)+(16+12)+(11+1)+(10+1)+(10+4)+(10+4)+(10+4)+(10+4)+(10+4)] = "UPDATE `accounts` SET";
        
    format(query_stringsizeof(query_string), "%s `Name` = '%s',"query_stringPlayer[playerid][pName]);
        
    format(query_stringsizeof(query_string), "%s `Password` = '%s',"query_stringPlayer[playerid][pKey]);
        
    format(query_stringsizeof(query_string), "%s `Model` = '%i',"query_stringPlayer[playerid][pModel]);
        
    format(query_stringsizeof(query_string), "%s `Char` = '%i',"query_stringPlayer[playerid][pChar]);
        
    format(query_stringsizeof(query_string), "%s `Sex` = '%i',"query_stringPlayer[playerid][pSex]);
        
    format(query_stringsizeof(query_string), "%s `Admin` = '%i',"query_stringPlayer[playerid][pAdmin]);
        
    format(query_stringsizeof(query_string), "%s `APassword` = '%s',"query_stringPlayer[playerid][pAKey]);
        
    format(query_stringsizeof(query_string), "%s `Helper` = '%i',"query_stringPlayer[playerid][pHelper]);
        
    format(query_stringsizeof(query_string), "%s `Money` = '%i'"query_stringPlayer[playerid][pMoney]);
        
    format(query_stringsizeof(query_string), "%s `Leader` = '%i',"query_stringPlayer[playerid][pLeader]);
        
    format(query_stringsizeof(query_string), "%s `Rang` = '%i',"query_stringPlayer[playerid][pRang]);
        
    format(query_stringsizeof(query_string), "%s `Skin` = '%i',"query_stringPlayer[playerid][pSkin]);
        
    format(query_stringsizeof(query_string), "%s `Member` = '%i',"query_stringPlayer[playerid][pMember]);
        
    format(query_stringsizeof(query_string), "%s WHERE `ID` = '%d'"query_stringPlayer[playerid][pID]);
        
    mysql_function_query(connectsquery_stringfalse"""");
        
    RemovePlayerInfo(playerid);
        return 
    true;

    Помогите плиззз!!!

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

    Статус
    Оффлайн
    Регистрация
    09.09.2015
    Сообщений
    541
    Репутация:
    78 ±
    PHP код:
    format(query_stringsizeof(query_string), "%s `Member` = '%i'"query_stringPlayer[playerid][pMember]); 
    У тебя перед WHERE была запятая

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

    Статус
    Оффлайн
    Регистрация
    13.06.2016
    Адрес
    Одесса, Украина
    Сообщений
    281
    Репутация:
    51 ±
    А для удобства перервести это все в один format с использованием \ для перевода на новую строку?
    ПРимер:
    PHP код:
    format(query_string,sizeof(query_string),"UPDATE `accounts` SET \
    `Name` = '%s', \
    `Password` = '%s' \
    WHERE `ID` = '%d' "
    ,
    Player[playerid][pName],
    Player[playerid][pKey],
    Player[playerid][pID]); 
    И выглядит лучше и читать это хотя бы возможно. А еще выведи mysql_errno() посмотри ошибки и для уверенности что у тебя все сохраняется как надо - выведи строку запроса через printf()

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

    Статус
    Оффлайн
    Регистрация
    03.10.2016
    Адрес
    Алма-Ата
    Сообщений
    56
    Репутация:
    2 ±
    Не помогло ! и где там у меня запятая ?

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

    Статус
    Оффлайн
    Регистрация
    09.09.2015
    Сообщений
    541
    Репутация:
    78 ±
    Цитата Сообщение от Mr.Dark Посмотреть сообщение
    Не помогло ! и где там у меня запятая ?
    format(query_string, sizeof(query_string), "%s `Member` = '%i',", query_string, Player[playerid][pMember]);

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

    Статус
    Оффлайн
    Регистрация
    03.10.2016
    Адрес
    Алма-Ата
    Сообщений
    56
    Репутация:
    2 ±
    Убрал я эту запятую и не помогло !

    тут все верно ?
    PHP код:
    stock RemovePlayerInfo(playerid)
    {
        
    Player[playerid][pID] = 0;
        
    Player[playerid][pName][0] = 0;
        
    Player[playerid][pKey][0] = 0;
        
    Player[playerid][pModel] = 0;
        
    Player[playerid][pChar] = 0;
        
    Player[playerid][pSex] = 0;
        
    Player[playerid][pEmail][0] = 0;
        
    Player[playerid][pHelper] = 0;
        
    Player[playerid][pMoney] = 0;
        
    Player[playerid][pLeader] = 0;
        
    Player[playerid][pRang] = 0;
        
    Player[playerid][pSkin] = 0;
        
    Player[playerid][pMember] = 0;
        return 
    true;


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

    Статус
    Оффлайн
    Регистрация
    13.06.2016
    Адрес
    Одесса, Украина
    Сообщений
    281
    Репутация:
    51 ±
    Цитата Сообщение от Mr.Dark Посмотреть сообщение
    Убрал я эту запятую и не помогло !

    тут все верно ?
    PHP код:
    stock RemovePlayerInfo(playerid)
    {
        
    Player[playerid][pID] = 0;
        
    Player[playerid][pName][0] = 0;
        
    Player[playerid][pKey][0] = 0;
        
    Player[playerid][pModel] = 0;
        
    Player[playerid][pChar] = 0;
        
    Player[playerid][pSex] = 0;
        
    Player[playerid][pEmail][0] = 0;
        
    Player[playerid][pHelper] = 0;
        
    Player[playerid][pMoney] = 0;
        
    Player[playerid][pLeader] = 0;
        
    Player[playerid][pRang] = 0;
        
    Player[playerid][pSkin] = 0;
        
    Player[playerid][pMember] = 0;
        return 
    true;

    Еще раз пишу - printf() - выведи свою строку запроса и выведи mysql_errno()

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

    Статус
    Оффлайн
    Регистрация
    03.10.2016
    Адрес
    Алма-Ата
    Сообщений
    56
    Репутация:
    2 ±
    Цитата Сообщение от qwezert Посмотреть сообщение
    Еще раз пишу - printf() - выведи свою строку запроса и выведи mysql_errno()
    Знал бы я ещё как этот printf() вывести =)))))))))))

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

    Статус
    Оффлайн
    Регистрация
    13.06.2016
    Адрес
    Одесса, Украина
    Сообщений
    281
    Репутация:
    51 ±
    Цитата Сообщение от Mr.Dark Посмотреть сообщение
    Знал бы я ещё как этот printf() вывести =)))))))))))
    С этого и нужно начинать. Основы pawn для начала изучи, а потом приступай к работе с БД mysql.

    - - - Добавлено - - -

    Цитата Сообщение от Mr.Dark Посмотреть сообщение
    Знал бы я ещё как этот printf() вывести =)))))))))))
    Перед RemovePlayerInfo(playerid); напиши printf("QUERY: %s",query_string); printf("ERROR = %d",mysql_errno());
    Запусти мод, сделай все то же самое что ты делал и смотри в консоли - напишет строку и ERROR .

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

    Статус
    Оффлайн
    Регистрация
    03.10.2016
    Адрес
    Алма-Ата
    Сообщений
    56
    Репутация:
    2 ±
    PHP код:
    QUERYUPDATE `accountsSET `Name` = 'Gennadiy_Litvinov', `Password` = 53452345', `Model` = '0', `Char` = '0', `Sex` = '1', `Admin` = '5', `APassword` = '', `Helper` = '0', `Money` = '0', `Leader` = '4', `Rang` = '10', `Skin` = '61', `Member` = '4'  WHERE`ID` = '10'
    ERROR = 0 
    PHP код:
    QUERYUPDATE `accountsSET `Name` = '', `Password` = '', `Model` = '0', `Char` = '0', `Sex` = '0', `Admin` = '5', `APassword` = '', `Helper` = '0', `Money` = '0', `Leader` = '1', `Rang` = '10', `Skin` = '17', `Member` = '1'  WHERE`ID` = '0'
    ERROR 

 

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

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

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

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

Ваши права

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