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

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

    Не получается получить данные из таблицы [MySQL R40]

    В базе данных значение скина стоит, а получить сервер при авторизации не может. В чем может быть связана проблема?

    Код:
    forward LoadAccount(playerid);
    public LoadAccount(playerid)
    {
        cache_get_value_name(0, "Password", User[playerid][Pass]);
        cache_get_value_name_int(0, "Sex", User[playerid][Sex]);
        cache_get_value_name_int(0, "Age", User[playerid][Age]);
        cache_get_value_name_int(0, "Sex", User[playerid][Skin]);
    cache_get_value_name_int(0, "Skin", User[playerid][Skin]);
    	printf(" %i",User[playerid][Skin]);
        SendClientMessage(playerid, 0xFFFFFF00, "Авторизация прошла успешно!");
        SpawnPlayer(playerid);
        return 1;
    }

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

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Наверное потому, что ты узнаёшь значение для Skin из столбца Sex?
    Хоть немного свой код проверяй и пытайся сам исправлять, прежде чем на форумы бежать с вопросами. Совсем глупо же, ну
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

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

    Статус
    Оффлайн
    Регистрация
    16.04.2016
    Сообщений
    68
    Репутация:
    -1 ±
    Если бы было очень просто. Я бы не стал задавать такой глупый вопрос. Я в тупике.

    Код:
    forward LoadAccount(playerid);
    public LoadAccount(playerid)
    {
        cache_get_value_name_int(0, "id", User[playerid][ID]);
        cache_get_value_name(0, "Password", User[playerid][Pass]);
        cache_get_value_name_int(0, "Sex", User[playerid][Sex]);
        cache_get_value_name_int(0, "Age", User[playerid][Age]);
        cache_get_value_name_int(0, "Skin", User[playerid][Skin]);
    	printf(" %i",User[playerid][Skin]);
        SendClientMessage(playerid, 0xFFFFFF00, "Авторизация завершена!");
        SpawnPlayer(playerid);
        return 1;
    }
    Вот текущий код, который у меня на данный момент.

    А вот ошибка:

    Код:
    [15:08:10] [plugins/mysql] cache_get_value_name_int: invalid row index '0' (number of rows: '0') (C:\Users\Андрей\Desktop\Новая папка\gamemodes\newmode.pwn:865)
    [15:08:10] [plugins/mysql] cache_get_value_name: invalid row index '0' (number of rows: '0') (C:\Users\Андрей\Desktop\Новая папка\gamemodes\newmode.pwn:866)
    [15:08:10] [plugins/mysql] cache_get_value_name_int: invalid row index '0' (number of rows: '0') (C:\Users\Андрей\Desktop\Новая папка\gamemodes\newmode.pwn:867)
    [15:08:10] [plugins/mysql] cache_get_value_name_int: invalid row index '0' (number of rows: '0') (C:\Users\Андрей\Desktop\Новая папка\gamemodes\newmode.pwn:868)
    [15:08:10] [plugins/mysql] cache_get_value_name_int: invalid row index '0' (number of rows: '0') (C:\Users\Андрей\Desktop\Новая папка\gamemodes\newmode.pwn:869)
    Ошибка все равно есть, и в базе данных уже есть всё что нужно. Просто получить не может.

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

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

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

    Steve Pavlina

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

    Статус
    Оффлайн
    Регистрация
    16.04.2016
    Сообщений
    68
    Репутация:
    -1 ±
    Код:
    stock RegisterPlayer(playerid)
    {
        new query_string[160];
    	format(query_string, sizeof(query_string), "INSERT INTO `accounts` (`Name`,`Password`,`Sex`,`Age`,`Skin`) VALUES ('%s','%s', '%i', '%i', '%i')", User[playerid][Name],Register[playerid][Pass],Register[playerid][Sex], Register[playerid][Age], Register[playerid][Skin]);
    	mysql_tquery(mysql_connect_ID, query_string, "LoadAccount", "i", playerid);
    }
    Вот запрос сам. Пишет "Авторизация же", текст появляется, не думаю что проблема здесь.

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

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

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

    Steve Pavlina

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

    Статус
    Оффлайн
    Регистрация
    16.04.2016
    Сообщений
    68
    Репутация:
    -1 ±
    На вашем портале в минуале http://pro-pawn.ru/showthread.php?10548,
    Аналогичная ситуация.

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

    Статус
    Оффлайн
    Регистрация
    30.10.2014
    Сообщений
    148
    Репутация:
    37 ±
    Цитата Сообщение от Нуб Посмотреть сообщение
    На вашем портале в минуале http://pro-pawn.ru/showthread.php?10548,
    Аналогичная ситуация.
    SELECT и INSERT в запросе сильно различаются своим функционалом.
    Ты пишешь мод, не зная простых правил.
    Реально, начни разбираться сам, без помощи. Подобных тем дохренища.
    Pawn - странный предмет. Вроде понимаешь, а вроде бы нет.

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

    Статус
    Оффлайн
    Регистрация
    16.04.2016
    Сообщений
    68
    Репутация:
    -1 ±
    Таких как у меня много тем?

    Ну вот, проблема осталась.

    Код:
    stock RegisterPlayer(playerid)
    {
        new query_string[160];
    	format(query_string, sizeof(query_string), "INSERT INTO `accounts` (`Name`,`Password`,`Sex`,`Age`,`Skin`) VALUES ('%s','%s', '%i', '%i', '%i')", User[playerid][Name],Register[playerid][Pass],Register[playerid][Sex], Register[playerid][Age], Register[playerid][Skin]);
    	mysql_tquery(mysql_connect_ID, query_string, "OnRegister", "i", playerid);
    }
    public OnRegister(i)
    {
    	SendClientMessage(i,-1," - 1 ");
        new query_string[160];
        format(query_string, sizeof(query_string), "SELECT * FROM `accounts` WHERE `Name` = '%s' AND `Password` = '%s'",User[i][Name],User[i][Pass]);
        mysql_tquery(mysql_connect_ID, query_string, "LoadAccount", "d", i);
    }
    forward LoadAccount(playerid);
    public LoadAccount(playerid)
    {
        cache_get_value_name_int(0, "id", User[playerid][ID]);
        cache_get_value_name(0, "Password", User[playerid][Pass]);
        cache_get_value_name_int(0, "Sex", User[playerid][Sex]);
        cache_get_value_name_int(0, "Age", User[playerid][Age]);
        cache_get_value_name_int(0, "Skin", User[playerid][Skin]);
    	printf(" %i ", User[playerid][Skin]);
        SpawnPlayer(playerid);
        return 1;
    }
    - - - Добавлено - - -

    Закрывайте тему. Нашел проблему

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

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Зачем ты вообще в запросе сверяешь пароль, если аккаунт только создан?
    И зачем вообще загружаешь данные из БД, если ты их только туда записал? -_-
    Что ты вообще делаешь, понимаешь сам-то хоть?
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

 

 

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

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

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

Ваши права

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