2011-07-17 32 views
2

我是新來的smarty!我有一個打印表格的循環!但是它會讓synatc錯誤出現什麼問題?php smarty語法錯誤

{foreach $messages as $message} 
<tr style="{if !$message->read }font-weight:bold;{/if}"> 
    <td style="width: 3%; background: #EFEFEF" align="center"><input type="checkbox" name="selected[]" class="selected" value="{$account->username}{chr(22)}{$account->email}" /></td> 
    <td style="width: 3%;" align="center" >{$smarty.get.offset+([email protected]+1)}</td> 
    <td style="width: 20%;" >{$message->from}{if $message->firstname || $message->lastname}<span style="font-size:10px;font-weight:normal;color:#666"> <br />{$message->firstname} {$message->lastname}</span>{/if}</td> 
    <td style="width: 46%;" ><a href="{$smarty.server.PHP_SELF}?mod=message&amp;caption=get&amp;id={$message->id}">{$message->subject}</a></td> 
    <td style="width: 30%;" >{lib_abstracts::convertTime($message->cDate, '', TRUE, TRUE)}</td> 
</tr> 
{/foreach} 
+0

什麼是它報告的語法錯誤? –

+0

第96行的模板「D:\ Apache2 \ htdocs \ portal \ admin /../admin/modules/listMessage.tpl」中的語法錯誤「\t read} font-weight :bold; {/ if}「>」 - 意外的「}」,預期的一個:「|」 ,「}」,「*」,「/」,「%」,「+」,「 - 」,「」&「」,ISIN,ISDIVBY,ISNOTDIVBY,ISEVEN,ISNOTEVEN,ISEVENBY,ISNOTEVENBY,ISODD,ISNOTODD, ,ISNOTODDBY,「==」,「!=」,「(>,gt)」,「(<,lt)" , "(> =,ge)」,「(<=,le)」,「===」,「!==」 ,「(%,mod)」,「(&&,and)」,「(||或or)」,「xor」 –

回答

3

你在這裏->read }空格刪除此,這將是工作

<tr style="{if !$message->read }font-weight:bold;{/if}"> 
+0

Thaaaaaanks這是我的錯!:D –

+0

@hakre:除我之外沒有正確的答案,這傢伙! –

+0

@hakre:bcz它的工作原理!你是網絡警察嗎? –

1

foreach語法不正確。您正在使用PHP風格foreach。 Smarty的有點不同。 注意:你的語法是有效的Smarty 3.如果您使用的Smarty 2.x中,使用方法:

{foreach from=$messages item=message} 
    .... 
{/foreach} 

Smarty foreach docs

+0

它在smarty 3中發佈http://www.smarty.net/docs/en/language.function.foreach.tpl –

+0

@Hamid所以它是! –