Как предотвратить вывод элементов

#php #pear #quickform

#php #pear #quickform

Вопрос:

Я пытаюсь создать форму с помощью quickform (по умолчанию в компании).
Эта форма состоит из нескольких частей, но на одной странице.
Я объединяю его с системой шаблонов sigma.

Идея страницы заключается в:

 |-----------------------|<br>
|        header         |<br>
|-----------------------|<br>
|    content top        |<br>
|-----------------------|<br>
|first part of the form |<br>
|-----------------------|<br>
|second part of the form|<br>
|-----------------------|<br>
|        footer         |<br>
|-----------------------|
  

Теперь я создал этот макет. Но у меня проблема с формой.

Эта форма должна быть разделена на 2 части. Но quickform этого не поддерживает.

Я решил написать верхнюю часть формы как обычную часть моего шаблона, при этом эти элементы также доступны в quickform. (массив с идентификаторами, которые я также использую для отображения формы).

Теперь возникает проблема.
Как мне запретить quickform / sigma выводить элементы формы?.

<!-- BEGIN qf_checkbox -->{qf_element}<!-- END qf_checkbox --> Это работает, но выводит их,
<!-- BEGIN qf_checkbox --><!-- END qf_checkbox --> Это не работает.

Приветствую, Эрик

Ответ №1:

Я не знаком с этой системой шаблонов, но я бы посоветовал вам ознакомиться с ее руководством по некоторым условным функциям. Но в любом случае… простым обходным решением должно быть просто присвоение значениям значения NULL или пустых строк, так что даже если он их выводит, на самом деле отображать будет нечего.

Комментарии:

1. Проблема с этим решением заключается в том, что входные данные все еще отображаются. Кроме того, условные выражения сработали бы, если quickform предоставил бы все свои элементы.

Ответ №2:

Я решил это, просто создав отдельный элемент только для верхней формы. Он обладает всеми свойствами из qf_checkbox и некоторыми другими материалами, которые могут быть полезны.

Таким образом, мне не пришлось создавать скрытые входные данные или другие хаки. Я просто показываю верхнюю форму с этими расширенными флажками, а нижние флажки — обычные флажки. проблема устранена :).