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


пспользование оператора if else


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

#1 TelecomMedia

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

  • Пользователи
  • PipPipPip
  • 378 сообщений

Отправлено 08 Август 2013 - 15:42

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

подскажите пожалуйста как настроить шаблон печати счета следующим образом:
необходимо, чтобы логотип в счете выводился в зависимости не только от выбранной нашей компании, а исходя из 2-х условий: 1. Наша компания и 2. Проект.

Попытался поднакидать вот это:

{if $Nasha_kompaniya.Yuridicheskoe_nazvanie_kompanii="ИП Березин"} -----<Если наша компания - ИП Березин>----
{if $Proekt="АААА"} ------<И если Проект = АААА>-----
{$Nasha_kompaniya.АААА} ------<То вставляем вот этот логотип>-----
{elseif $Nasha_kompaniya.Yuridicheskoe_nazvanie_kompanii="ИП Козлов"} -------<А если наша компания - ИП Козлов>-----
{if $Proekt="ББББ"} -------<И проект = ББББ>-----
{$Nasha_kompaniya.ББББ} -------<То вставляем другой логотип>-----
{elseif $Nasha_kompaniya.Yuridicheskoe_nazvanie_kompanii="ООО "Телеком""} -------<А если наша компания - ООО "Телеком">-----
{if $Proekt="ВВВВ"} -------<И проект = ВВВВ>-----
{$Nasha_kompaniya.ВВВВ1} -------<То вставляем вот этот логотип>-----
{elseif $Nasha_kompaniya.Yuridicheskoe_nazvanie_kompanii="ООО "Телеком""} -------<И если наша компания все та же - ООО "Телеком">-----
{if $Proekt="ВВВВ2"} -------<Но проект = ВВВВ2>-----
{$Nasha_kompaniya.ВВВВ2} -------<То вставляем другой логотип>-----
{/if}


При печати шаблона выдает ошибку "Fatal error: Uncaught exception 'SmartyCompilerException' with message 'Syntax Error in template "string:" on line 159"

#2 CbCoder

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

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

Отправлено 09 Август 2013 - 08:49

{if $Nasha_kompaniya.Yuridicheskoe_nazvanie_kompanii="ИП Березин" and $Proekt="АААА"}

http://www.smarty.ne...function.if.tpl

#3 TelecomMedia

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

  • Пользователи
  • PipPipPip
  • 378 сообщений

Отправлено 09 Август 2013 - 13:37

Получилось следующее, но выдается все та же ошибка.

{if $Nasha_kompaniya.Yuridicheskoe_nazvanie_kompanii="ИП Березин" $Proekt="АААА"}
{$Nasha_kompaniya.АААА}
{elseif $Nasha_kompaniya.Yuridicheskoe_nazvanie_kompanii="ИП Козлов" and $Proekt="ББББ"}
{$Nasha_kompaniya.ББББ}
{elseif $Nasha_kompaniya.Yuridicheskoe_nazvanie_kompanii="ООО "Телеком"" and $Proekt="ВВВВ"}
{$Nasha_kompaniya.ВВВВ1}
{elseif $Nasha_kompaniya.Yuridicheskoe_nazvanie_kompanii="ООО "Телеком"" and $Proekt="ВВВВ2"}
{$Nasha_kompaniya.ВВВВ2}
{/if}

#4 wondertalik

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

  • Пользователи
  • PipPipPip
  • 1 159 сообщений
  • Пол:Мужчина
  • Город:Кривой Рог, Украина

Отправлено 09 Август 2013 - 13:50

{if $Nasha_kompaniya.Yuridicheskoe_nazvanie_kompanii="ИП Березин" $Proekt="АААА"} 
Пропустили and

{if $Nasha_kompaniya.Yuridicheskoe_nazvanie_kompanii="ИП Березин" and $Proekt="АААА"} 

Сообщение отредактировал wondertalik: 09 Август 2013 - 13:51


#5 CbCoder

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

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

Отправлено 09 Август 2013 - 14:00

И еще замечание: равенство в условиях вроде должно писаться как "==", а не "=". По крайней мере в документации так написано.

#6 wondertalik

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

  • Пользователи
  • PipPipPip
  • 1 159 сообщений
  • Пол:Мужчина
  • Город:Кривой Рог, Украина

Отправлено 09 Август 2013 - 14:33

Просмотр сообщенияCbCoder (09 Август 2013 - 14:00) писал:

И еще замечание: равенство в условиях вроде должно писаться как "==", а не "=". По крайней мере в документации так написано.
Да упустил по невнимательности.. Вообще в шаблонах я всегда использую эквиваленты '' == " - " eq ", " != " - "neq". Как по мне бросается в глаза сразу же.


{if $Nasha_kompaniya.Yuridicheskoe_nazvanie_kompanii eq "ИП Березин" and $Proekt eq "АААА"} 







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

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