1. PHP / Говнокод #13721

    +151

    1. 1
    2. 2
    3. 3
    if (!$start) {
        $this->_select()->where('1 != ? ', 1);
    }

    Наткнулись на такую какулю, непонятно, зачем? Да и в принципе если вторую 1-цу экрунируем, почему первую нет??

    Запостил: index0h, 02 Сентября 2013

    Комментарии (6) RSS

    • Чтобы запутать вероятного противника.
      > если вторую 1-цу экрунируем
      С чего бы вдруг? Подстановка значения - совсем не экранирование.
      Ответить
      • там походу не явно проверяется тип выражения и если строка то экранируется.
        Ответить
        • По логике нормальных человеческих bind variables никакого экранирования не требуется.
          Ответить
          • в таком случае надо парсить то что передали значением.
            а то передадут 1' or 1='1 и приплыли
            Ответить
            • Куда приплыли то? Этот аргумент с вероятностью 99.9% уходит в bindValue, а не пихается в строку вместо вопросика.
              Ответить
            • Мсье не в курсе, что такое prepared statements?
              Ответить

    Добавить комментарий