Вот мой умник файл шаблона:использованием in_array с умник секции петли
{section loop=$Author name=Author}
<option value="{$Author[Author].Id}"
{if $Author[Author].Id|in_array:$ListAths.AuthorId})}
selected
{/if}
>
{$Author[Author].AuthorName}</option>
{/section}
Моя PHP структура для обеих переменных (Автор и ListAths) Похоже что-то подобное с заменой правильной переменной для SQL и команды умник:
$stmt = $connect->prepare(/*command here*/);
$stmt->execute($array);
$result = $stmt->fetchall();
$smarty->assign('ListAths', $result);
$stmt2 = $connect->prepare(/*command here*/);
$stmt2->execute($array);
$result2 = $stmt2->fetchall();
$smarty->assign('Author', $result2);
ошибка, что я получаю:
Warning: in_array() expects parameter 2 to be array, null given in /mydirectory/Smarty/sysplugins/smarty_internal_templatebase.php(171) : eval()'d code on line 71
$ListAths.AuthorId
не распознается как массив! Как я могу исправить проблему?
это работает так:
{section loop=$Author name=Author}
<option value="{$Author[Author].Id}"
{section loop=$ListAths name=ListAths}
{if $Author[Author].Id == $ListAths[ListAths].AuthorId}
selected
{/if}
{/section}
>
{$Author[Author].AuthorName}</option>
{/section}
Но я все еще хотел бы сделать это с помощью in_array
'не распознается как описание array' ошибки говорит вам, что это ** NULL ** –