Сообщения без ответов | Активные темы Текущее время: 08 сен 2026, 16:43



Ответить на тему  [ Сообщений: 12 ]  Страница 1, 2  »
Как передать числовое значение переменной smarty в php? 
Автор Сообщение

Зарегистрирован: 12 ноя 2010, 11:41
Сообщения: 121

добрый день!
Мне нужно передать числовое значение из "цены" в переменную php:
в файле message.html или list.html это значение {%$v.value%} появляется из кода:
{%foreach from=$message.fields.v item='v'%}{%if $v.string_type == 'u'%}{%if $settings.user || (!$settings.user && $v.hide == 0)%}{%else%}{%$after_registration%}{%/if%}{%else%}{%if $settings.user || (!$settings.user && $v.hide == 0)%}{%$v.value%}{%else%}{%$after_registration%}{%/if%}{%/if%}{%/foreach%}

Пробовал разными способами:
{%$balance = "$v.value";%}, или
или {%php%}$balance = "$v.value";{%/php%}, или
или {%php%}$balance = {%$v.value%};{%/php%}, или
или {%php%}$balance = "{%$v.value%}";{%/php%}, или
Как вы догадались, я слаб в программировании, у меня не один вариант не работает :(
Просьба помочь


13 фев 2012, 15:10
Профиль

Зарегистрирован: 12 ноя 2010, 11:41
Сообщения: 121

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


14 фев 2012, 09:17
Профиль
Аватара пользователя

Зарегистрирован: 23 сен 2010, 04:13
Сообщения: 717
Откуда: г.Владивосток
Аватара пользователя

Что в конечном итоге необходимо получить?

_________________
» Хостинг 98 р\месяц и домен в подарок

Зарабатывай на своем сайте!
Специально для досок объявлений.

» Заработок с AD
» Заработок с CityAds
» Заработок с AdAds


14 фев 2012, 10:25
Профиль

Зарегистрирован: 12 ноя 2010, 11:41
Сообщения: 121

у меня там выводится цена, например, 1500
я хочу передать в переменную $balance, только числовое значение 1500
и, $balance используется уже для дальнейших расчетов
а вот как это сделать, не хватает сообразительности


14 фев 2012, 12:11
Профиль

Зарегистрирован: 12 ноя 2010, 11:41
Сообщения: 121

{%php%}$balance = $smarty->get_template_vars('$v.value'); echo $balance {%/php%}
тоже не работает. А должно, здесь метод


14 фев 2012, 18:54
Профиль

Зарегистрирован: 18 фев 2011, 17:21
Сообщения: 200

советую написать на е-мейл службы поддержки support@illusionweb.ru


14 фев 2012, 21:23
Профиль

Зарегистрирован: 12 ноя 2010, 11:41
Сообщения: 121

единственное, это не относится к support


14 фев 2012, 21:31
Профиль
Администратор
Аватара пользователя

Зарегистрирован: 20 сен 2010, 21:15
Сообщения: 2966
Аватара пользователя

Лучше произвести все вычисления в php модуле, напрмер в modules/message.inc:
$balance = $message['f_1']['value'];
а затем передать её значение в шаблон:
$smarty->assign('balance', $balance);
А в шаблоне уже выводить, message.html:
<b>{%$balance%}</b>


20 фев 2012, 09:46
Профиль

Зарегистрирован: 12 ноя 2010, 11:41
Сообщения: 121

создаю modules/message.inc
со следующим кодом:

<?php
$balance = $message['v.value']; //присвоить переменной значение Смарти v.value
$smarty->assign('balance', $balance); //передаем значение в переменную Смарти
?> //почти все по инструкции

поскольку у меня цена выводится циклом в message.html:
{%foreach from=$message.fields.v item='v'%}{%if $v.string_type == 'u'%}{%if $settings.user || (!$settings.user && $v.hide == 0)%}{%else%}{%$after_registration%}{%/if%}{%else%} {%if $settings.user || (!$settings.user && $v.hide == 0)%}{%$v.value%}{%else%}{%$after_registration%}{%/if%}{%/if%}{%/foreach%}

и вставляю в message.html
{%$balance%} //для вывода результата - а он не выводится!!


20 фев 2012, 20:26
Профиль

Зарегистрирован: 18 фев 2011, 17:21
Сообщения: 200

в папке modules уже есть фал message.inc
туда нужно просто добавить указанный Юрой код


21 фев 2012, 22:08
Профиль
Показать сообщения за:  Поле сортировки  
Ответить на тему   [ Сообщений: 12 ] 

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron