Codeigniter-在1个视图中显示来自2个不同模型函数的2个不同数据

时间:2018-07-19 16:02:47

标签: javascript php html codeigniter

我是Codeigniter的新手,而我一直陷入这个问题。

我的模型中有2个功能,即:

 //Outside of the chart function
 var colors = ['#30d074', '#f3cb2c', '#ffa85c', '#ff604e'];
 function colorHeatMap() { 
  return d3.scale.threshold().domain([0.02,0.06,0.23]).range(colors);   }

 //now apply colorHeatMap function into the .color function.
 chart.colors(colorHeatMap()) .calculateColorDomain();

我将发送给我的控制器的

public function getAdminCred()
        {
            $query = $this->db->query("SELECT username,password,owner FROM login");
            return $query->result();
        }

    public function countUsers()
    {
        $query = $this->db->query("SELECT * FROM users");
    return $query->num_rows();
    }

但是每次我同时显示$ adm ['USERS']和$ rowcount ['COUT']时,只有其中一个有效,而另一个会发送错误“ Unidentified Variable”。

public function Dashboard()
{
    $adm['USERS'] = $this->user_model->getAdminCred();
    $rowcount['COUT'] = $this->user_model->countUsers();
    var_dump($rowcount);

    $this->load->view('header');
    $this->load->view('pages/dashboard', $rowcount);
    $this->load->view('footer');
}

是否可以同时显示两者?还是Codeigniter仅允许在一个实例上显示1个数据?

任何帮助将不胜感激!

4 个答案:

答案 0 :(得分:1)

$array_for_view = array(
    'somevar1' => $this->model->getsomething1();
    'somevar2' => $this->model->getsomething2();
);

OR

$array_for_view['somevar1'] = $this->model->getsomething1();
$array_for_view['somevar2'] = $this->model->getsomething2();

,然后转到您的视图:

$this->load->view('someview', $array_for_view);

当然,您可以像在回答中一样合并数组,但是首选使用上述方法,并且效率更高。

答案 1 :(得分:1)

一点无关,但是为什么只为了获取用户数而获取所有用户?

您可以这样做:

=AVERAGE(IF(A:A<>"",IF(B:B<>"",A:A,""),""))
=STDEV(IF(A:A<>"",IF(B:B<>"",A:A,""),""))

在SQL中看起来像这样: $this->db->count_all_results('users')

当您开始获得更多用户时,这将大大加快数据库方面的工作。

关于解决您的问题的主题,我会做:

SELECT count(*) FROM users

答案 2 :(得分:0)

所以我觉得xD很笨

我找到了问题的答案。

代替这样做:

$this->load->view('pages/Dashboard', $adm, $rowcount);

改为执行此操作:

$this->load->view('pages/Dashboard', $adm + $rowcount);

aaa它解决了我的问题。无论如何,谢谢:D:D

答案 3 :(得分:0)

为什么要使用两个数组变量?使用一个数组来存储与视图相关的数据。

$adm['USERS'] = $this->user_model->getAdminCred();
$adm['COUNT'] = $this->user_model->countUsers();

$this->load->view('pages/dashboard', $adm);