Функция "IF" отказывается работать

vave

Полезный
Регистрация
22 Июн 2007
Сообщения
466
Реакции
16
Модернизирую SocialEngine3.
Хочу что бы пользователи, которым пришло уведомление, видели одну картинку, а те у которых всё пусто, другую.

Что только не экспериментировал.


PHP:
    {if !$notify_total}
<img border="0" src="images_n/1/updates1.png" width="32" height="32">
<font size="1" color="#A2D612">{lang_sprintf id=1019 1="<span id='notify_total'>`$notify_total`</span>"}
                    {assign var="notify_total" value=$notifys.total_grouped}
                      
{else}      
                      
<img border="0" src="images_n/1/updates.png" width="32" height="32">                       
    {/if}   

также пробовал 


{if $notify_total != 0} 
<img border="0" src="images_n/1/updates1.png" width="32" height="32">
<font size="1" color="#A2D612">{lang_sprintf id=1019 1="<span id='notify_total'>`$notify_total`</span>"}
                    {assign var="notify_total" value=$notifys.total_grouped}
    {/if}  


{if !$notify_total} 
<img border="0" src="images_n/1/updates.png" width="32" height="32">                       
    {/if}

Очень нуждаюсь в вашей помощи! Все формы по поддержке SE3 уже давно неактивные.
 
$notify_total Выводит Кол-во уведомлений, (У вас новый комментарий, Вас добавили в друзья итд...)
По этому задумка такая, больше 0, уведомления показываются, 0 - либо не позкаываются, либо неактивная картинка

Может как-то можно иначе сделать?
 
а так?
Код:
  {assign var="notify_total" value=$notifys.total_grouped}

{if !$notify_total}
<img border="0" src="images_n/1/updates1.png" width="32" height="32">
<font size="1" color="#A2D612">{lang_sprintf id=1019 1="<span id='notify_total'>`$notify_total`</span>"}     
{else}             
<img border="0" src="images_n/1/updates.png" width="32" height="32">                      
    {/if}
 
А разве не должны быть здесь скобки?
Код:
{if (!$notify_total)}
трудно сказать, так как это не язык стандартной разметки, это скорее всего какойто темплейт енджин
 
Нет там не надо скобок. У меня в шаблонах движка такой же шаблонизатор.
Вот пример:
Код:
{if $_G['forum']['type'] != "sub"}
            Назад в клуб $_G['cache']['forums']['name']
            {else}
            Назад в клуб $_G['forums']['name']
            {/if}
Так что код
Код:
 {if !$notify_total}
<img border="0" src="images_n/1/updates1.png" width="32" height="32">
<font size="1" color="#A2D612">{lang_sprintf id=1019 1="<span id='notify_total'>`$notify_total`</span>"}
                    {assign var="notify_total" value=$notifys.total_grouped}
                   
{else}   
                   
<img border="0" src="images_n/1/updates.png" width="32" height="32">                    
    {/if}
должен работать, если в переменной правильные данные
 
Собственно читаем Для просмотра ссылки Войди или Зарегистрируйся (версию сами гадайте)
и там уже найдёте, где написть {php}var_dump($notify_total);{/php}
В конфиге смарти может стоять запрет на использование {php}
И далее смотрим Для просмотра ссылки Войди или Зарегистрируйся
Далее, пишем правильный код.
 
Абсолютно верно.
Смартя чистой воды. Ток я думаю если движок последний то Смартя 3 на нем используется Для просмотра ссылки Войди или Зарегистрируйся
К сожалению к ней документации на русском нет.
 
Советую проверить на наличие $notify_total, точно ли передается переменная в шаблон) И конечно разрешение на использование php в шаблоне)
 
Назад
Сверху