1. Куча / Говнокод #4464

    +132

    1. 1
    2. 2
    3. 3
    4. 4
    <div class="no-display">
    	<input type="hidden" name="product" value="<?php echo $_product->getId() ?>" />
    	<input type="hidden" name="related_product" id="related-products-field" value="" />
    </div>

    дефолтная тема Megento. подобными вещами полна коробочка...

    Запостил: govnoboy, 27 Октября 2010

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

    • Кэп?
      Ответить
      • к полям типа "hidden" нет смысла применять стили навроде no-display, т.к. они (поля) по сути своей не имеют видимого представления . наверное как-то так
        Ответить
        • а вот и Кэп!
          Ответить
        • а если такое использование:
          <div class="no-display">
          <input type="hidden" name="product" value="<?php echo $_product->getId() ?>" />
          </div>
          [...]
          <div class="display">
          <input type="hidden" name="product" value="<?php echo $_other_product->getId() ?>" />
          </div>
          [...]
          а потом что-то вроде...
          var one = $('.no-display').find('input[name="product"]').val();
          var two =$('.display').find('input[name="product"]').val();
          ...
          Ответить
          • "если бы да кабы..."
            нам дали кусок контекста, от него и отталкиваюсь
            Ответить
          • немедленно прекратите обезьянничать!
            document.forms[0].product.value = ', блжад!'
            Ответить
        • боюсь что это пережитки. Например система позволяет расположить по два инпута в одном диве, и выбрать тип инпута и класс дива. Что бы див не раскочевряжился от примененного где-то наверху стиля (какой нить width: 100500px) его и сделали невидимым.

          Короче залечили костыль системны на уровне верстки
          Ответить
          • Есть способы делать поля hidden видимыми в браузере. А если так записать, то надежная защита от хакеров :)
            Ответить
            • javascript:(function(){for(var i=0;i<document.forms.length;i++)for(var j=0;j<document.forms[i].elements.length;j++)if(document.forms[i].elements[j].tagName.toUpperCase()=='INPUT'&&documen t.forms[i].elements[j].type.toUpperCase()=='HIDDEN')document.f orms[i].elements[j].type='TEXT'})()
              Ответить
              • Я имел в виду на этапе загрузки странички использовать фильтры в локальном прокси и менять hidden на text. Некоторые хакеры любят так работать. А тут облом, все равно поле остается невидимым :)
                Ответить
                • > в локальном прокси и менять hidden на text. Некоторые хакеры
                  бедные хакеры :-(
                  Ответить
                • ))))))
                  тоесть что бы поправить содержимое hidden поля хакеры используют не firebug, не inspect element, не developer tools, а локальный прокси, который правит контент?

                  Это не хакеры.
                  Хакеры пишут свой драйвер ядра, который правит контент прямо на сетевом уровне.
                  и молюца что не будет https
                  Ответить
                  • Есть разные хакеры и разные методы. Это один из них. И смайлик в конце ":)" о чем-то говорит ;)
                    Ответить
                  • я не понимаю, об чем спор. <sarcasm>Hidden поле и означает visibility:hidden ведь</sarcasm> ))))
                    Ответить
                    • Да, но если сделать реплейс hidden на text, то поля станут видимыми. А в приведенном коде стоит дополнительный уровень защиты :)
                      Ответить
                      • visibility:text, не?
                        Ответить
                        • Если по тупому заменять hidden на text, то да, но фильтры более хитрые. Я, к примеру, про Proxomitron говорю, там есть фильтры для показа скрытых полей, он не тупо hidden на text меняет, а только внутри тега input атрибута type.
                          Ответить
                        • Тем более, класс no-display, скорее всего, описан в отдельном css-файле, так что даже тупая замена не прокатит :)
                          Ответить
    • и где то есть id, где то нет )
      Ответить
    • value="<?php echo $_product->getId() ?>" /> - тоже кусок говнеца.
      Ответить

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