Надо вызвать из кода HTML, который находится в шаблоне *.tpl код PHP, который будет выполнен в скрипте, в котором в свою очередь был вызван этот шаблон. Наверное из *.tpl надо вызывать какую-то пользовательскую функцию, написанную на PHP, если так, напишите синтаксис вызова функции, пожалуйста.
Спустя 5 минут, 40 секунд (23.03.2010 - 17:35) Adil написал(а):
Вообще-то смарти специально создан для того,чтобы отделить код от отображения, поэтому вызвать в нем php функцию вы никак не сможете. Передавайте обработанные данные методом assign.
Второй вариант написать модификатор собственной функции для смарти.
Второй вариант написать модификатор собственной функции для смарти.
Спустя 23 минуты, 43 секунды (23.03.2010 - 17:59) dmitry1208197320 написал(а):
Спасибо за ответ, но, честно говоря, не могу понять, как через assign можно передать обратно данные в php-скрипт и в каком месте в php-скрипте их обрабатывать. Можете привести коротенький примерчик?
Спустя 6 минут, 37 секунд (23.03.2010 - 18:05) Adil написал(а):
Вы лучше опишите, что вы хотите сделать.
Спустя 13 минут, 45 секунд (23.03.2010 - 18:19) dmitry1208197320 написал(а):
В php-скрипте объявляю переменную
$smarty->assign('name', 'NAME');
вызываю шаблон
$smarty->display('index.tpl');
в шаблоне отображаю переданную переменную:
<input type="text" name="mailto" size="40" align ="center" value={$NAME}>
которая обрабатывается пользователем, а при нажатии пользователем на кнопку
<input type="submit" name="sm_clear" value="Очистить">
хочу в скрипте, например, очистить переменную 'NAME'.
$smarty->assign('name', 'NAME');
вызываю шаблон
$smarty->display('index.tpl');
в шаблоне отображаю переданную переменную:
<input type="text" name="mailto" size="40" align ="center" value={$NAME}>
которая обрабатывается пользователем, а при нажатии пользователем на кнопку
<input type="submit" name="sm_clear" value="Очистить">
хочу в скрипте, например, очистить переменную 'NAME'.
Спустя 3 минуты, 48 секунд (23.03.2010 - 18:23) Adil написал(а):
Что значит очистить переменную?
Если хотите, чтобы в форме очистилось это поле, то копайте в строну javascript. Это не php!
Например
Если хотите, чтобы в форме очистилось это поле, то копайте в строну javascript. Это не php!
Например
onclick="document.getElementById('form').value=''"
Спустя 11 минут, 46 секунд (23.03.2010 - 18:35) dmitry1208197320 написал(а):
Спасибо, буду разбираться
Спустя 9 дней, 54 минуты, 23 секунды (2.04.2010 - 18:29) b00tanik написал(а):
Существует 2 способа использования php-кода в шаблонах смарти
1. тег {php} ссылка на документацию - такой способ не рекомендуется
2. написание плагина документация - этот способ хорош тем, что помогает делать много интересного, не выходя за синтаксис шаблонизатора.
1. тег {php} ссылка на документацию - такой способ не рекомендуется
2. написание плагина документация - этот способ хорош тем, что помогает делать много интересного, не выходя за синтаксис шаблонизатора.