检查数据库记录是否存在Codeigniter

时间:2015-02-05 13:16:08

标签: php codeigniter codeigniter-hmvc

我有一个项目并遇到了问题。我使用Codeigniter HMVC,因此构建模块。我感谢您的帮助。感谢。

我有两个模块方法,其中一个调用另一个。另一个提供数据库结果并将其加载到视图中,然后从第一个模块方法传递给模板。我现在意识到,既然我得到了一个视图而不是来自第二个模块的数据,我就不知道如何检查是否有返回的数据库记录,而我不想要另一个数据库调用那个目的。 " item"之间的分离和"描述"模块是必需的。 相反,发送数据将构成一个非常混乱的结构,据我所知,这将抵消HMVC结构。因此,我需要保持这种结构。 如何检查数据库记录是否存在并且只运行第一种方法?请指教。感谢

通过URL

调用的第一个模块(控制器方法)
function view_item($item_id) 
{    

    $data['item_id'] = $item_id;       
    $data['item'] = $this->item;  
    $data['item_group'] = $this->item_group;  
    $data['content_module'] = Modules::run("descriptions/view",$item_id); 
    $data['active_menu_item'] = "descriptions";
    $data['view_file'] = "handle_view";
    $data['module'] = $this->module;
    $template = "application";      
    $this->load->module('templates');
    $this->load->templates->$template($data); 

}

第一模块方法调用的第二模块方法

function view($item_id)
{
    $data['title'] = "View description";
    $data['page_title'] = "View description";
    $data['page_subtitle'] = "This item";              
    $data['item_id'] = $item_id;
    $array = array('item_id'=> $item_id,'group_id'=> $this->group_id);
    $object = $this->get_where_custom($array);
    $num_rows = $object->num_rows;
    $descriptions =  $object->result();
    $data['description'] =  $descriptions[0];
    $this->load->view('view_view',$data); 

} 

1 个答案:

答案 0 :(得分:0)

if(isset($data['content_module']))

将是另一种选择。

希望这有帮助。