很抱歉,如果这个问题已经得到解答,但我无法找到答案。 我想将一个变量从我的模型传递给控制器,最后在视图中显示它。
我对数据库执行查询,之后我计算结果(通过num_rows)。然后我返回结果。
public function countHighRisk(){
$this->db->select("ares_status");
$this->db->from("tbl_alert_result");
$this->db->join('tbl_status_standards', 'ares_status = sts_status_id');
$this->db->where('sts_status_risk', 3);
$query = $this->db->get();
return $query->num_rows();
}
之后我将结果放在一个数组中并将数组传递给我的视图。
public function index()
{
$this->load->model('Alert_result_model');
$data['high'] = $this->Alert_result_model->countHighRisk();
$this->load->view('templates/head');
$this->load->view('templates/menu');
$this->load->view('pages/Dashboard', $data);
$this->load->view('templates/footer');
}
当我尝试在视图中显示变量时出现错误。
<div class="col-xs-8 text-right">
<span> High Risk </span>
<h2 class="font-bold"><span class="count"><?= $high; ?></span></h2>
</div>
提前致谢。
答案 0 :(得分:1)
你在这里调用意见的整个想法都是错误的。请按如下方式使用:
<强>控制器:强>
public function index()
{
$this->load->model('Alert_result_model');
$data['high'] = $this->Alert_result_model->countHighRisk();
$this->load->view('pages/Dashboard', $data);
}
查看:强>
<? $this->load->view('templates/head'); ?>
<? $this->load->view('templates/menu'); ?>
<div class="col-xs-8 text-right">
<span> High Risk </span>
<h2 class="font-bold"><span class="count"><?= $high; ?></span></h2>
</div>
<? $this->load->view('templates/footer'); ?>
还可以通过$this->Alert_result_model->countHighRisk();
print_r($this->Alert_result_model->countHighRisk();)
实际返回的内容
答案 1 :(得分:1)
您可以将视图加载到控制器中,但在
下执行此操作class Dashboard extends CI_Controller {
public function index() {
$this->load->model('Alert_result_model');
$data['high'] = $this->Alert_result_model->countHighRisk();
// Choose only one header examples:
$data['header'] = $this->load->view('header', Null, TRUE); // If No Data
$data['header'] = $this->load->view('header', $data, TRUE); // If Data
// Choose only one Footer examples:
$data['footer'] = $this->load->view('footer', Null, TRUE); // If No Data
$data['footer'] = $this->load->view('footer', $data, TRUE); // If Data
$this->load->view('dashboard', $data);
}
}
信息中心视图
<?php echo $header;?>
<?php foreach ($high as $low) { ?>
<?php echo $low['something'];?>
<?php }?>
<?php echo $footer;?>
如果您有一个标题单独的页眉控制器和页脚控制器,您将需要HMVC如果您对CI3中默认用户指南的用户指南右上角感到困惑,则切换到更清洁的版本。
答案 2 :(得分:0)
请更改
$this->load->view('pages/Dashboard', $data);
进入
$this->load->view('pages/Dashboard', $data, true);
现在它应该工作。