Скрытие неиспользуемых полей в форме

Тема в разделе "PHP", создана пользователем rijy, 14 июл 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. rijy

    rijy

    Регистр.:
    3 ноя 2007
    Сообщения:
    249
    Симпатии:
    82
    Здравствуйте уважаемые форумчане!
    Вопрос следующего плана. Есть форма в виде хтмл, которая используется в виде шаблона. В эту форму подгружаются значения с помощью php.
    В разных случаях подгружаются разные значения. Есть варианты, при которых в некоторые поля не выводится никаких значений.
    Скажите, есть ли возможность скрывать такие поля, в которые не выводится никаких значений.
    При этом обязательным условием есть разделение html (шаблон) и php (механизм вывода значений).
    Спасибо
     
  2. diavolic

    diavolic

    Регистр.:
    17 мар 2010
    Сообщения:
    522
    Симпатии:
    102
    Код:
    <div style="display: block;">
    Хотим видеть содержимое
    </div>
    
    <div style="display: none;">
    Не хотим видеть содержимое
    </div>
    
     
  3. iXy

    iXy Писатель

    Регистр.:
    21 ноя 2009
    Сообщения:
    6
    Симпатии:
    0
    Вот, к примеру, скрытый text-box
    HTML:
    <input style='visibility:hidden; position:absolute;' name='sometext' type='text'/>
    "visibility:hidden" - скрывает элемент, "position:absolute" делает так, что другие элементы формы не будут съезжать в сторону, относительно скрытого.
     
  4. jo0o00nyy

    jo0o00nyy Постоялец

    Регистр.:
    12 май 2010
    Сообщения:
    65
    Симпатии:
    27
    Чисто скрыть поле ввода можно через старый добрый
    Код:
    <input name='sometext' type='hidden'/>
    А если надо блоками, часть формы с пояснительными надписями то через код diavolic
     
  5. DupleX

    DupleX Создатель

    Регистр.:
    20 апр 2006
    Сообщения:
    26
    Симпатии:
    4
    Безопасней всего вообще не показывать их в html коде

    <?php if(!empty($field_value)) { ?>
    <input name='field_name' type='text' value="<?php echo $field_value;?>"/>
    <?php } ?>
     
  6. diavolic

    diavolic

    Регистр.:
    17 мар 2010
    Сообщения:
    522
    Симпатии:
    102
    небольшая ремарка (не исправление). вместо
    PHP:
    <?php echo $var;?>
    можно использовать сокращенный вариант
    PHP:
    <?=$var;?>
     
  7. DupleX

    DupleX Создатель

    Регистр.:
    20 апр 2006
    Сообщения:
    26
    Симпатии:
    4
    Если short_open_tag в php.ini стоит в значении off, то данная конструкция даст ошибку. Несмотря на то, что по умолчанию включено, лучше быть готовым к подлостям админов. Кстати в сокращённом варианте можно и без ; обойтись -
    <?=$var?>
     
Статус темы:
Закрыта.