Я пытаюсь добавить форму веб-контакта на сайт, который использует шаблоны Smarty PHP.Как интегрировать форму PHP с Smarty?
Моя первоначальная попытка (ниже) создает пустую веб-страницу.
.TPL файл
{debug}
{extends file='toxtweet.tpl'}
{block name=body}
<form action="" method="post">
{foreach from=$formitems as key=name item=value}
<label for={$name}>{$value}</label>
<input type="text" name={$name} size="50"/>
{/foreach}
<input type="submit" value="E-mail" />
</form>
{/block}
.php файл
<?php
include 'base.php';
include './scripts/recaptchalib.php';
$formitems = parse_ini_file("formitems.ini");
$smarty -> assign('formitems',$formitems);
$smarty -> display("contact.tpl");
?>
base.php
и toxtweet.tpl
прекрасно работают во всех других страниц, так что я не думаю, что они являются проблемой. recaptchalib.php
имеет правильный путь.
При удалении линий {foreach} ... {/foreach}
пустая веб-страница отображается правильно. Ошибка сохраняется, если я использую формат {foreach $x as $y}
или {foreach from=$x key=k value=v}
.
Отладка показывает, что файл ini
со значениями для formitems
был правильно загружен.
Вы писали в своем коде '{/ foreach}' или '{\ foreach}'? – bwoebi
@bwoebi {/ foreach}, извините за опечатку. Исправлено в OP. – mac389
Значение $ должно быть обернуто в {} –