未定义的变量:数据


Undefined variable: data

我对PHP MVC架构还是比较熟悉的。在这里,我试图通过模型视图控制器列出数据库表中的数据。我正在处理这个错误以获取数据。我正在编辑我的数据,。所以编辑功能不起作用。

测试表名称很少有字段可以获取数据用户名和电子邮件。。请帮我解决这个问题

这是我的模型文件。

 public function getAllRecords()
        {
            $this->load->library("database");
            $q = $this->db->get("test");
            if($q->num_rows() > 0)
            {
                return $q->result();
            }
            return array();
        }

这是我的控制器文件

 public  function index()
        {
            $this->load->model("testmodel");
            $data['records'] = $this->model->getAllRecords();
            $this->load->view("edit",$data);
        }

这是我的View/edit.php文件

<tr>
                <?php
                if (is_array($data)){
        foreach($data as $row):
   ?>
    <tr>
        <td><?=$row->id?></td>
        <td><?=$row->uname?></td>
        <td><?=$row->email?></td>
     <td> <a href="javascript:edit()">  <img src="../edit.png" alt=""/> </a>  </td>
     <td> <a href="javascript:delete_data()">  <img src="../delete.png" alt=""/> </a>  </td>
    </tr>

控制器

更改

$data['records'] = $this->model->getAllRecords();

$data['records'] = $this->testmodel->getAllRecords();

查看

使用$records而不是$data

在视图文件中使用$records而不是$data

<?php
    if (is_array($records)){
    foreach($records as $row):
?>

当你将数据从控制器传递到视图时,比如

$data['name']='max';$this->load->view("编辑",$data);

在视图中,您可以使用变量$name 来访问它

控制器:

public  function index()
    {
        $this->load->model("testmodel");
        $data['records'] = $this->model->getAllRecords();
        $this->load->view("edit",array('data'=>$data));
    }

这肯定行得通。享受