从codeigniter中的数据库查询向视图添加动态数据时未定义的变量[重复]
Posted
技术标签:
【中文标题】从codeigniter中的数据库查询向视图添加动态数据时未定义的变量[重复]【英文标题】:undefined variable when Adding Dynamic Data to the View from database query in codeigniter [duplicate] 【发布时间】:2018-11-18 03:55:01 【问题描述】:我已经做了一个管理页面和用户页面,我想在管理员登录时显示在数据库中注册的用户列表。 为此,我创建了如下模型,
public function get_last_ten_entries()
$query = $this->db->query("SELECT username FROM public");
return $query->result();
这是我通过我创建的视图访问的,当管理员登录时,他被重定向到,如下所示,
<h1><?php echo $data;?></h1>
通过控制器,
$this->load->model('loginmodel');
$login_id = $this->loginmodel->login_valid($username, $password);
if($login_id)
$this->load->library('session');
$this->session->set_userdata('user_id','$login_id');
$data['query'] = $this->loginmodel->get_last_ten_entries();
$this->load->view('admin/account', $data);
但是当我执行这个时,我得到了,
遇到 PHP 错误 严重性:通知
消息:未定义变量:数据
文件名:admin/account.php
行号:11
【问题讨论】:
您在视图中将其用作$query
,您已经自己明确输入了$data['query']
,然后像往常一样使用foreach
在您的视图中尝试此操作,print_r($query);die;
,您应该会在浏览器上看到数据。
非常感谢 himanshu ...它工作了..
【参考方案1】:
只需在视图中使用 $query 而不是 $data
【讨论】:
【参考方案2】:型号
public function get_last_ten_entries()
$query = $this->db->query("SELECT username FROM public");
return $query->result();
控制器
$this->load->model('loginmodel');
$data['query'] = $this->loginmodel->get_last_ten_entries();
$login_id = $this->loginmodel->login_valid($username, $password);
if($login_id)
$this->load->library('session');
$this->session->set_userdata('user_id','$login_id');
$data['query'] = $this->loginmodel->get_last_ten_entries();
$this->load->view('admin/account', $data);
查看
<?php
foreach($query as $row)
echo $row['name'];
?>
【讨论】:
以上是关于从codeigniter中的数据库查询向视图添加动态数据时未定义的变量[重复]的主要内容,如果未能解决你的问题,请参考以下文章
查询中的 WHERE 子句在 CodeIgniter 3 中无法正常工作