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

    Статус
    Оффлайн
    Регистрация
    17.01.2018
    Сообщений
    31
    Репутация:
    0 ±

    Правильно ли сделал запрос к БД?

    PHP код:
        static const fmt_query[] =     "\
                                        SELECT * FROM "
    T_USERS" WHERE `name` = '%s' LIMIT 1 \
                                    "
    ;
        new 
    query[sizeof(fmt_query)+(-2+MAX_PLAYER_NAME)];
        
    format(querysizeof(query), fmt_queryGetName(playerid));
        
    mysql_query(dbHandlequerytrue); // отправили запрос к БД
        
    new row;
        if(
    cache_get_row_count(row))
        {
            
    SendClientMessage(playerid, -1"Игрок не найден!");
        } 
    - - - Добавлено - - -

    У меня пишет, что не найден, значит все стабильно работает, я собственно это почему спросил... Что бы вы посоветовали еще что нибудь, фичи какие нибудь, я разрабатываю первый раз с нуля :(
    I love box, thank you my coach ...

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

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

    PHP код:
        static const fmt_query[] =     "\ 
                                        SELECT * FROM "
    T_USERS" WHERE `name` = '%s' LIMIT 1 \ 
                                    "

        new 
    query[sizeof(fmt_query)+(-2+MAX_PLAYER_NAME)]; 
        
    format(querysizeof(query), fmt_queryGetName(playerid)); 
        
    mysql_query(dbHandlequerytrue); // отправили запрос к БД 
        
    new row
        
    cache_get_row_count(row)
        if(
    row == 0
        { 
            
    SendClientMessage(playerid, -1"Игрок не найден!"); 
        }
        else
        { 
            
    SendClientMessage(playerid, -1"Игрок найден!"); 
        } 
    Я бы посоветовал изучить сначала основы, а не спрашивать о каких-то "фичах". Занимайся реализацией своих идей, а не преждевременной оптимизацией кода. Всё равно не сможешь написать что-то хорошее сразу. Оптимизацией займёшься когда уже опыта наберёшься.
    Последний раз редактировалось DeimoS; 08.03.2018 в 16:37.
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

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

    Статус
    Оффлайн
    Регистрация
    17.01.2018
    Сообщений
    31
    Репутация:
    0 ±
    Проверяет есть ли игрок в бд или нет
    I love box, thank you my coach ...

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

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

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

    Steve Pavlina

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

    Статус
    Оффлайн
    Регистрация
    17.01.2018
    Сообщений
    31
    Репутация:
    0 ±
    т.е надо так?
    PHP код:
    cache_get_row_count(rowfield)
    {


    Вот так верно будет? Если нет, пожалуйста подправьте
    PHP код:
        new rowfield;
        if(
    cache_get_row_count(rowfield))
        {
            static const 
    fmt_str[] =     "\
                                            {FCFCFD}Добро пожаловать на сервер "
    SERVER_NAME"!\n\n\
                                            Ваш логин: %s {88aa62}[свободен] \n\
                                            {FCFCFD}Придумайте и запишите пароль в окошко:\
                                        "
    ;
            new 
    str[sizeof(fmt_str)+(-2+MAX_PLAYER_NAME)];
            
    format(strsizeof(str), fmt_strGetName(playerid));
            
    SPD(playeriddRegisterDIALOG_STYLE_INPUT, !"Регистрация | Ввод пароля [1|3]"str, !"Далее""");
        }
        else
        {
            static const 
    fmt_str[] =     "\
                                            Добро пожаловать на сервер "
    SERVER_NAME"!\n\n\
                                            Ваш логин: %s [занят] \n\
                                            Придумайте и запишите пароль в окошко:\
                                        "
    ;
            new 
    str[sizeof(fmt_str)+(-2+MAX_PLAYER_NAME)];
            
    format(strsizeof(str), fmt_strGetName(playerid));
            
    SPD(playeriddRegisterDIALOG_STYLE_INPUT, !"Авторизация | Ввод пароля"str, !"Далее""");
        } 
    Проверил, так тоже постоянно показывает, что аккаунт свободен :(

    Разобрался. Можно закрывать, спасибо всем!
    Последний раз редактировалось DeimoS; 08.03.2018 в 20:28.
    I love box, thank you my coach ...

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

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

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

    Steve Pavlina

  8. Пользователь сказал cпасибо:
    Mike World (08.03.2018)
 

 

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

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

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

Ваши права

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