0

我有一个包含类别的数据库,我想将其放入 smarty 的选择选项菜单中

在我的 news.model 我有那个功能

function  getCategoriesNews(){
       $sql = "SELECT name,id, FROM categories WHERE id>0 ORDER BY ID ";
       return $this->db->GetAll($sql);
   }

我从数据库中读取类别的地方。在我的模板 add_news.tpl 我想把它们放在这里

<select name="categories" id="news_cat">
        <option value="0"></option>  
        {foreach from=$news item=i}                              
            <option value="" ></option>            
        {/foreach}    
      </select>

但我不知道我是如何尝试不同的方法的,但是......

4

2 回答 2

0

在调用 getCategoriesNews() 函数的 php 页面中,将结果分配到一个变量中,

$categories = getCategoriesNews();

然后将此数组分配给模板

if(!empty($categories[0]))
    $tplObj->assign('categories',$categories); //smarty variable without $

然后在您的 tpl 文件中按如下方式使用它,

考虑到你有 catId,cat 字段

<select name="categories" id="news_cat">
        <option value="0"></option>
  {if $categories != ''}
        {foreach from=$categories item=i}                              
            <option value="{$i.catId}" >{$i.cat}</option>            
        {/foreach}
  {/if}
</select>
于 2013-10-17T08:23:12.000 回答
0

检查您的查询。替换ORDER BY id而不是ORDER BY ID

 $sql = "SELECT name,id, FROM categories WHERE id>0 ORDER BY id ";
于 2013-10-17T08:24:49.913 回答