Перейти к содержимому


Исключение пунктов из шаблона печати с помощью checkbox

checkbox

Сообщений в теме: 2

#1 sentimento

    Активный участник

  • Пользователи
  • PipPipPip
  • 45 сообщений
  • Пол:Мужчина
  • Город:Москва
  • Интересы:Видеография

Отправлено 24 Март 2016 - 02:35

Здравствуйте!

Есть шаблон печати (договор) с пунктами 1.1, 1.2 1.3 итд

Есть поле список с множественным выбором "Пункты договора" и списком значений 1.1, 1.2 1.3 итд | по умолчанию все пункты активны, как я понимаю checked или 1

Необходимо заключить каждый пункт шаблона печати в что-то типа

{if {Пункты договора} пункт договора (1.1) = 1} Тут сам текст {/if} Если галочки нет - не выводится ничего.

Как правильно написать условие?


					
					<br />
					
				</div>
				
<script type= ipb.global.registerReputation( 'rep_post_30997', { domLikeStripId: 'like_post_30997', app: 'forums', type: 'pid', typeid: '30997' }, parseInt('0') );

#2 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 24 Март 2016 - 09:48

Интересный вопрос. В базе ваше поле будет хранится как набор всех выделенных значений через перевод строки. Соответственно необходимо как-то опираться от этого.

#3 Александр Пономарев

    Активный участник

  • Пользователи
  • PipPipPip
  • 435 сообщений
  • Пол:Мужчина
  • Город:Таганрог

Отправлено 24 Март 2016 - 14:10

Можно сделать иначе.
Заводите таблицу "Договоры" с полями:
- номер договора
- клиент

с подтаблицей

"Пункты договора" с четырьмя полями:
- договор
- статус (да/нет);
- текст договора;
- порядок следования.
На кнопку делаете задание "Формирование договора"

$nom_dog=1; // Номер выводимого договора
echo mf_export($nom_dog); // Вывод текста из пунктов

function mf_export($nom_dog) {
  $dog="";
  $n=1;
  $objects = data_table("Пункты договора", "`status`=0  AND `статус`='да' AND `договор`=".$nom_dog."   ORDER BY `порядок следования` ", "all");  
  foreach ($objects as $dogovor) {
	$dog=$dog.$n.". ".$dogovor['текст договора']."/n/r";
  }
  return $dog;
}

Ну где-то так навскидку

Сообщение отредактировал Александр Пономарев: 24 Март 2016 - 14:12






Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных