Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php CodeIgniter在视图中加载两个控制器功能_Php_Codeigniter - Fatal编程技术网

Php CodeIgniter在视图中加载两个控制器功能

Php CodeIgniter在视图中加载两个控制器功能,php,codeigniter,Php,Codeigniter,我正在CodeIgniter中创建一个简单的待办事项列表,因为我刚刚了解了它 我有一个个人资料页面,应该显示用户的详细信息+他检查要做的所有项目 这是我目前的看法 <div class="profile_header"> <?php foreach ($users as $user) { ?> <h4><?php echo $user['name']; ?></h4> </div> 还有我

我正在CodeIgniter中创建一个简单的待办事项列表,因为我刚刚了解了它

我有一个个人资料页面,应该显示用户的详细信息+他检查要做的所有项目

这是我目前的看法

<div class="profile_header">
        <?php foreach ($users as $user) { ?>
        <h4><?php echo $user['name']; ?></h4>

</div>
还有我的模特

  public function getUserInfo(){
    $user_email = $this->session->userdata('email');
    $query = $this->db->get_where('users', array('email' => $user_email));
    return $query->result_array();
}

现在您可以看到,我从user表中选择了用户信息,并使用index controller函数将其发送到视图。现在,如果我想从
列表任务
表中获取所有
任务
,并将其显示在页面上,我假设我必须编写一个新的模型函数,并在我的控制器中用一个新函数调用它,比如
getUserTasks
,但我如何将它们发送到视图?

您只需向
$data
数组添加另一个元素即可

所以你的控制器看起来像这样:

public function index(){
    $this->load->model('model_users');
    $query = $this->model_users->getUserInfo();
    $data['users'] = null;
    if($query){
        $data['users'] =  $query;
    }

    // Load tasks (create a new method in your model)
    $data['tasks'] = $this->model_users->getUserTasks();

    $this->load->view('profile/profile', $data);
}

您只需将另一个元素添加到
$data
数组中

所以你的控制器看起来像这样:

public function index(){
    $this->load->model('model_users');
    $query = $this->model_users->getUserInfo();
    $data['users'] = null;
    if($query){
        $data['users'] =  $query;
    }

    // Load tasks (create a new method in your model)
    $data['tasks'] = $this->model_users->getUserTasks();

    $this->load->view('profile/profile', $data);
}

首先,我强烈建议您创建两个模型,名称分别为用户和任务

在用户模型中,只需编写有关用户和用户表的代码

<?php
    class User_model extends CI_Model {
        function __construct() {
            parent::__construct();
        }

        function getUserInfo(){ /*Fetch your users data*/ }
    }
?>

Codeigniter和其他框架的存在便于编码和调试。如果您将所有功能组合在一个模型中,您无法轻松跟踪它们,并且在项目结束时,您将远离面向对象。

首先,我强烈建议您创建两个名为用户和任务的模型

在用户模型中,只需编写有关用户和用户表的代码

<?php
    class User_model extends CI_Model {
        function __construct() {
            parent::__construct();
        }

        function getUserInfo(){ /*Fetch your users data*/ }
    }
?>

Codeigniter和其他框架的存在便于编码和调试。如果您将所有功能组合在一个模型中,您无法轻松跟踪它们,并且在项目结束时,您将远离面向对象。

您没有同时使用CodeIgniter的版本2和版本3。请不要标记垃圾邮件。已编辑。您没有同时使用CodeIgniter的版本2和版本3。请不要标记垃圾邮件。编辑。
public function index(){
    $this->load->model('User_model');
    $this->load->model('Tasks_model');

    $queryOfUsers = $this->user_model->getUserInfo();
    $queryOfTasks = $this->tasks_model->getTasks();

    //manage/edit your data comes from database as you did above.
    //put it in data and send to view.

    $this->load->view('profile/profile', $data);
}