[英]Undefined variable in CodeIgniter view 5
I am learning CodeIgniter and I got stuck on this error. 我正在学习CodeIgniter,因此卡在此错误上。
$categories
is fine, but when I want to see $nationality
I have an error $categories
很好,但是当我想查看$nationality
出现错误
Message: Undefined variable: nationality
消息:未定义的变量:国籍
Filename: pages/add_recipe.php
文件名:pages / add_recipe.php
add_recipes.php add_recipes.php
<?print_r($categories);?>
<?print_r($nationality);?>
My controller 我的控制器
class Pages extends CI_Controller
{
public function add_recipe($page = 'add_recipe')
{
$this->load->helper('url');
if (!file_exists('application/views/pages/' . $page . '.php')) {
show_404();
}
$this->load->model('Categories_model');
$data['categories'] = $this->Categories_model->get_categories();
$this->load->model('Nationality_model');
$data['nationality'] = $this->Nationality_model->get_nationality();
$this->load->view('templates/header');
$this->load->view('templates/nav');
$this->load->view('pages/' . $page, $data);
$this->load->view('templates/sidebar', $data);
$this->load->view('templates/footer');
}
}
Models 楷模
public function get_nationality($conditions=null,$limit=null,$offset=0,$order=null){
if($conditions!=null){
$this->db->where($conditions);
}
if($order!=null) {
$this->db->order_by($order);
}
$query = $this->db->get('nationality',$limit,$offset);
return $query->result();
}
public function get_categories($conditions=null,$limit=null,$offset=0,$order=null){
if($conditions!=null){
$this->db->where($conditions);
}
if($order!=null) {
$this->db->order_by($order);
}
$query = $this->db->get('categories',$limit,$offset);
foreach($query->result_array() as $row ){
if(!$row['parent_id']){
$data[$row['id']][] = $row['title'];
}else {
$data[$row['parent_id']]['sub'][$row['id']] = $row['title'];
}
}
return $data;
}
Can you please update the Nationality model function get_nationality with this, try it...
public function get_nationality($conditions=null,$limit=null,$offset=0,$order=null){
if($conditions!=null){
$this->db->where($conditions);
}
if($order!=null) {
$this->db->order_by($order);
}
$query = $this->db->get('nationality',$limit,$offset);
if ($query->num_rows() > 0) {
foreach ($query->result() as $row) {
$data[] = $row;
}
return $data;
}
return false;
}
原来,该页面是从另一个控制器调用的,与名称混淆
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.