php smarty синтаксическая ошибка - PullRequest
2 голосов
/ 17 июля 2011

Я новичок в 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+($message@index+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}

Ответы [ 2 ]

3 голосов
/ 17 июля 2011

Здесь у вас есть пробел ->read } удалите это, и это будет работать

<tr style="{if !$message->read }font-weight:bold;{/if}">
1 голос
/ 17 июля 2011

Ваш foreach синтаксис неверен.Вы используете стиль PHP foreach.Smarty's немного отличается Примечание: ваш синтаксис действителен для Smarty 3. Если вы используете Smarty 2.x, используйте:

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

Документы Smarty foreach

...