[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как вызвать код php из шаблона Smarty?
dmitry1208197320
Помогите, плиз с задачей.
Надо вызвать из кода 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'.


Спустя 3 минуты, 48 секунд (23.03.2010 - 18:23) Adil написал(а):
Что значит очистить переменную?
Если хотите, чтобы в форме очистилось это поле, то копайте в строну 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. написание плагина документация - этот способ хорош тем, что помогает делать много интересного, не выходя за синтаксис шаблонизатора.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.