2013-04-06 48 views
2

我正在嘗試將Web聯繫表單添加到使用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.phptoxtweet.tpl做工精細在所有其他網頁,所以我不認爲他們是這個問題。 recaptchalib.php有正確的路徑。

如果刪除{foreach} ... {/foreach}行,則空白網頁將正常顯示。如果我使用格式{foreach $x as $y}{foreach from=$x key=k value=v},錯誤仍然存​​在。

調試顯示的值爲ini的文件已正確加載。

+0

您是否在自己的代碼中寫過「{/ foreach}」或「{\ foreach}」? – bwoebi 2013-04-06 15:06:33

+0

@bwoebi {/ foreach},對於錯字感到抱歉。在OP中修復。 – mac389 2013-04-06 15:12:22

+0

$ value需要封裝在{} – 2013-04-06 15:22:45

回答

1

從你的foreach中刪除「as」,它應該可以工作。