За последние 24 часа нас посетили 49588 программистов и 1385 роботов. Сейчас ищут 1084 программиста ...

Хренова кочерыжка! mysqli result -> num_rows = 0

Тема в разделе "PHP для новичков", создана пользователем igordata, 21 фев 2011.

  1. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    %s, и при этом есть одна строка. Нигде (http://ru2.php.net/manual/en/mysqli-result.num-rows.php) не написано, что там будет ноль в случае если одна строка. Вопрос: это нормально что он возвращает 0 если есть одна строка? =)

    при этом когда две строки - он возвращает два... может я че косячу... пойду искать..
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    гы. Я не эскейпил логин и ангелы Господни решили обратить мое внимание на это дело. Заэскейпил и дело пошло...
     
  3. admyx

    admyx Активный пользователь

    С нами с:
    14 мар 2008
    Сообщения:
    2.159
    Симпатии:
    1
    igordata
    Нифига, 1 строка это одна строка.
    0 строк - это ноль строк.

    Гы, я тут как-то с постгрем натупил - типа

    PHP:
    1. <?php
    2. $uLogin = thisText::clear($_POST['login']);
    3.  
    4. $q = 'SELECT *
    5. FROM participants
    6. WHERE login = '.$uLogin;
    Прикол в том, я про кавычки забыл, и если логин = login, то в запросе получается WHERE login = login.
    Постгрь это кушал и с радостной улыбкой на лице выдавал мне результат )
    Понял я свой косяк, только когда попытался войти под другим логином. =)=)
     
  4. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    я знаю что ноль это ноль, но при такой куери пхпмайадмин выдавал 1 строку и писал: строки 0 - 0 всего 1

    скрипт при этом вобще не получал никаких строк...