检查类别是否具有父级

时间:2014-07-18 13:52:16

标签: php mysql codeigniter

我正在创建自己的cms。现在我想展示哪个类别有父母,但我不知道怎么做,所以请帮助我。

我的类别表

 idkategori  |  namakategori  | parentid 
      1         Programming         0
      2            PHP              1

或者我需要我的类别的关系表?

我的控制器到目前为止。

function tampilmenu()
{
            $sql              = "select * from fc_kategori";
            $data['kategori'] = $this->bymodel->tampildata($sql);
            $sql1             = "select parentid from fc_kategori";
            $data['parent']   = $this->bymodel->tampildata($sql1);
                            $id=array();
                foreach ($data['parent'] as $paren)
            {
                $id[]=$paren->parentid;
            }
            foreach ($data['kategori'] as $cat) 
            if(in_array($cat->parentid,$id))
            {
                        $have ='Yes';
            }
            else
            {
                        $have ='No';
            }
            echo $cat->idkategori.$have;
                                    }   

}

我的模特

function tampildata ($sql)
{
    $query = $this->db->query($sql);
    return $query->result();
}

请不要笑我。

1 个答案:

答案 0 :(得分:0)

请遵循:

1)由于您使用的是 MVC framework ,因此请勿在控制器内部编写查询(查询应始终以模型形式编写)。
2)永远不要使用原始查询,因为CI为您提供了所谓的 Active Record 3)也绝不会将 direct queries 传递给您可能以任何语言编码的任何地方。始终传递数据并使该功能用于计算和查询过程 4)请记住,在CI Models 中仅用于数据库功能, Views 仅用于HTML标记和 {{ 1}} 充当模型和视图之间的中介。


您的代码:

控制器 -

Controllers

型号

public function tampilmenu()
{
    $categories = $this->bymodel->get_category_having_parent();

    echo "<pre>"; print_r($categories);

    // this will return object having all categories that are parents
}