MySQL的查询结果一般是一个数组,而不是所有结果集。因此我们需要将结果全部存到数组中进行处理,然后就可以很轻松的再Smarty中使用了。
$sql="select article_id,article_title from tbl_article order by article_id desc limit 0,5"; $result=mysql_query($sql); while($row=mysql_fetch_array($result)) { $record[]=array('id'=>$row['article_id'],'title'=>$row['article_title']); } $smarty = new Smarty; $smarty->template_dir ="./template"; $smarty->compile_dir ="./templates_c"; $smarty->left_delimiter = "{<";//我自己自定义的可以避免与HTML冲突 $smarty->right_delimiter = ">}"; //我自己自定义的可以避免与HTML冲突 $smarty->assign('doclist',$record); $smarty->display('index.tpl');
{<foreach from=$doclist item=curr_item>} <div><a href="show.php?id={<$curr_item.id>}">{<$curr_item.title>}</a></div> {</foreach>}
这样就可以完美解决分页显示和模板的问题了。