smarty выдает ошибку при использовании $ smarty.post - PullRequest
1 голос
/ 01 апреля 2011

Мы используем smarty в качестве системы шаблонов для одной из наших форм, пожалуйста, проверьте код добавления / редактирования формы ...

<form action="{$MAIN_URL}products/add" method="post" class="clearfix">
<input type="text" name="cname" value="{if $smarty.post.cname}{$smarty.post.cname}{elseif $editdetails.product_name}{$editdetails.product_name}{/if}" />

выдает следующую ошибку ...

Undefined variable: post in <b>/root/smarty/libs/sysplugins/smarty_internal_data.php</b> on line 291

Работает нормально, если мы удалим {if $smarty.post.cname}{$smarty.post.cname}, пожалуйста, помогите исправить. спасибо.

Ответы [ 2 ]

1 голос
/ 01 апреля 2011

Я думаю, что это должно быть

{if isset($smarty.post) && isset($smarty.post.cname)}

но для краткости это должно сработать

{if isset($smarty.post.cname)}{$smarty.post.cname}{elseif $editdetails.product_name}{$editdetails.product_name}{/if}
0 голосов
/ 01 апреля 2011

Вместо {$smarty.post.cname} ваша переменная на самом деле называется {$post.cname}? Вы, другие {$editdetails}, похоже, подразумеваете это.

Предполагается, что $smarty - это переменная объекта PHP Smarty, а не переменная шаблона.

...