【问题标题】:undefined variable in the view CI视图 CI 中的未定义变量
【发布时间】:2016-06-11 22:31:26
【问题描述】:

Users.php 控制器

class Users extends CI_Controller{
  public function userList(){
    $data['results'] = $this->user_model->get_users();
    $this->load->view('users_view',$data);
  }
}

user_model.php 模型

class User_model extends CI_Model{
  public function get_users()  
  {  
    $query = $this->db->get('users');  
    return $query->result();  
  }
}

users_view.php 查看

foreach ($results as $list) {
  echo $list->id;
}

main.php 查看

$this->load->view('users_view');

当我查看http://localhost:81/rokki/users/userlist 时,会显示 id。但是,当我通过 main.php 查看http://localhost:81/rokki/home 时,我收到如下错误:

遇到了 PHP 错误

严重性:通知

消息:未定义变量:结果

文件名:views/users_view.php

行号:41

回溯:

文件:C:\xampp\htdocs\rokki\application\views\users_view.php 行:41 函数:_error_handler

文件:C:\xampp\htdocs\rokki\application\views\layouts\main.php 行: 20 功能:查看

文件:C:\xampp\htdocs\rokki\application\controllers\Home.php 行:7 功能:查看

文件:C:\xampp\htdocs\rokki\index.php 行:315 功能:require_once

我是 CI 的新手。请帮我。提前致谢

【问题讨论】:

  • 任何答案都好运

标签: php codeigniter


【解决方案1】:

您是否有像 users 一样的 home 控制器?查看您的调用堆栈,您似乎有一个,所以如果还没有,我假设它是这样的。

class Home extends CI_Controller{
    public function index(){
        $data['results'] = $this->user_model->get_users();
        $this->load->view('main',$data);
   }
}

然后在你的 main.php 中将结果数据传递给 view_users 视图,就像这样。

$this->load->view('view_users', $results);

【讨论】:

  • 因为是 $data 你仍然需要$this->load->view('view_users', $data); 而不是$this->load->view('view_users', $results);
【解决方案2】:

试试

因为你的函数 userList

http://localhost:81/rokki/users/userList

Users.php

class Users extends CI_Controller{


   public function userList(){
     $this->load->model('user_model');
     $data['results'] = $this->user_model->get_users();
     $this->load->view('users_view',$data);
   }
}

用户模型.php

class User_model extends CI_Model{
  public function get_users()  
  {  
    $query = $this->db->get('users');
    // Change the result to array  
    return $query->result_array();  
  }
}

在视图中

foreach ($results as $list) {
  echo $list['id'];
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-24
    相关资源
    最近更新 更多