Добрый день, решил свой старый сайт окультурить и разделить код и шаблоны… Сделать все это решил при помощи smarty, то тут возникла загвоздка.Вот как было:
$sql = mysql_query("SELECT *
FROM categories, moves, translate, genre
WHERE translate.translateID = moves.translateID
AND genre.genreID = moves.genreID
AND moves.id_category = categories.id_category
AND name_move LIKE '%$search%'
ORDER BY name_move ASC");
if ($sql)
{
while($sql2 = mysql_fetch_object($sql))
{
?>
<html>
<tr vAlign="center">
<td align="center" width="3%"><?php echo ($num); ?></td>
<td align="center" width="15%"><?php echo "".$ sql2 ['name_move']."" ?></td>
<td align="center" width="12%"><?php echo "".$ sql2['name_cat']."" ?></td>
<td align="center" width="10%"><?php echo "".$ sql2 ['translate_name']."" ?></td>
<td align="center" width="10%"><?php echo "".$ sql2['video_codec']."" ?></td>
<td align="center" width="12%"><?php echo "".$ sql2 ['video_bitrade']."" ?> video</td>
<td align="center" width="10%"><?php echo "".$ sql2 ['audio_codec']."" ?></td>
<td align="center" width="10%"><?php echo "".$ sql2 ['audio_bitrade']."" ?> audio </td>
<td align="center" width="10%"><?php echo "".$ sql2 ['namberCD']."" ?></td>
<td align="center" width="8%"><?php echo "".$ sql2 ['size']."" ?> Ãá</td>
</tr>
</html>
Теперь хочу полученый из БД массив передать в шаблон smarty
$sql = 'SELECT *
FROM categories, moves, translate, genre
WHERE translate.translateID = moves.translateID
AND genre.genreID = moves.genreID
AND moves.id_category = categories.id_category
AND name_move LIKE '%$search%'
ORDER BY name_move ASC';
$smarty->assign('nic', $db->GetAll($sql));
$smarty->display('test.tpl');
В шаблоне test.tpl
<table>
<tr>
{section name=top loop=$nic}
<td>view {$nic[top]. name_move}<a></td>
<td>view {$nic[top]. name_cat}<a></td>
{/section}
</tr>
</table>
Но php ругается на то, что переменная $db не есть объектом!
Вот и интересует меня вопрос о том, чего же в новом куске кода не хватает для счастья?