我正在尝试使用名为“ increment_date”的MySQL表列在Codeigniter欢迎页面的底部获取JavaScript通知。
欢迎模型
function increment_date(){
$this->db->select('last_name,increment_date');
$this->db->from('tbl_officer');
$this->db->where('tbl_officer.status=1 and increment_date>= DATE(now()) and increment_date<=DATE_ADD(DATE(now()), INTERVAL 31 DAY)');
$query= $this->db->get();
if($query->num_rows()>0){
return $query->result();
}
}
欢迎控制器
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Welcome extends CI_Controller
{
function __construct()
{
parent::__construct();
$this->load->model('Welcome_Model');
}
public function index()
{
$this->load->view('header');
$this->load->view('dashboard');
$this->load->view('footer');
$this->data['noti']=$this->Welcome_Model->increment_date();
}
}
footer.php中提到的jquery.noty.packaged.js的URL如下:
<script src="<?php echo base_url(); ?>assets/js/notify/packaged/jquery.noty.packaged.js"></script>
欢迎视图(仪表板)
<script type="text/javascript">
$(document).ready(function() {
<?php
$now = new DateTime();
//;
if (!empty($noti)) {
foreach ($noti as $noti_date) {
$date = new DateTime($noti_date->increment_date);
?>
generateNoty('warning','bottomLeft','Increment Date of <br> Officer 123 is. <?= $noti_date->increment_date ?>;
<?php
}
}
?>
});
</script>
期望的输出
官员表中提供了一个递增日期->'2019-11-10',我想在一个月前在欢迎页面中通知此值。
但是通知没有在页面中通知。
可能出什么问题了?
谁能帮我 ?
最佳答案
您已将查询结果存储为$this->data['noti']
,但没有将其传递给视图。 The docs show how to do that。
在您的Controller方法中:
public function index() {
$this->data['noti']=$this->Welcome_Model->increment_date();
$this->load->view('header');
$this->load->view('dashboard', $this->data);
$this->load->view('footer');
}