当前位置: 首页 > 知识库问答 >
问题:

Codeigniter-遇到PHP错误未定义的变量:home_post

花阳秋
2023-03-14

所以我想使用codeigniter从数据库加载图像。这是我的代码:
控制器:Pweb

    public function display($id=FALSE)
    {
        if ($id==FALSE){
        $data["home_post"] = $this->M_pweb->displays();
        $this->load->view('header');
        $this->load->view('upload', $data);
        $this->load->view('footer');

        }else{
            $data["post"] = $this->M_pweb->displays($id);
        $this->load->view('header');
        $this->load->view('upload', $data);
        $this->load->view('footer');
        }
    }


型号:M_pweb

    public function displays($id=FALSE)
    {
        if ($id==FALSE){
            return $this->db->get("post")->result_array();

        }else{
            $query = $this->db->get_where("post", array('id'=>$id));
            return $query->row();
        }
        
    }


查看:上传

    <ul class="collection">
    <?php foreach ($home_post as $data ): ?>
    <li class="collection-item avatar">
        <img src="<?=site_url("upload/post/".$data["filename"]) ?>" class="circle">
        <p class="title"><?= $data["name"];?></p>
        <small><?= $data["description"];?></small>
        <a href="<?= site_url("pweb/upload/".$data["id"]) ?>" class="secondary-content">
            <i class="material-icons">visibility</i>
        </a>
    </li>
    <?php endforeach ?>
    </ul>


它会给出这样的错误:

遇到PHP错误严重程度:注意

消息:未定义变量:home_post

文件名:视图/upload.php

电话号码:47

回溯:

文件:C:\xampp\htdocs\pweb\application\views\upload。php行:47

函数:\u错误\u处理程序

文件:C:\xampp\htdocs\pweb\应用程序\控制器\Pweb.php行: 117

功能:查看

遇到一个PHP错误严重:警告

消息:为foreach()提供的参数无效

文件名:视图/upload.php

电话号码:47

回溯:

文件:C:\xampp\htdocs\pweb\application\views\upload。php行:47

函数:\u错误\u处理程序

文件:C:\xampp\htdocs\pweb\应用程序\控制器\Pweb.php行: 117

功能:查看

共有1个答案

孟健
2023-03-14

只需用以下代码替换控制器:(在HTML代码中,foreach循环使用“home\u post”变量,该变量未在控制器的else条件中定义。

控制器:Pweb

public function display($id=FALSE)
{
    if ($id==FALSE){
    $data["home_post"] = $this->M_pweb->displays();
    $this->load->view('header');
    $this->load->view('upload', $data);
    $this->load->view('footer');

    }else{
        $data["home_post"] = $this->M_pweb->displays($id);
                  ^
        $this->load->view('header');
        $this->load->view('upload', $data);
        $this->load->view('footer');
    }
}
 类似资料:
  • 在我的代码中,这是一个错误,解决方法是什么 遇到一个PHP错误 严重性:警告 消息:无法修改标题信息-标题已由发送(输出从/home/websites/public\u html/application/controllers/user.php:64开始) 文件名:helpers/url\u helper。php 线路号: 546 这是我的密码

  • 我是一个新手,在做这项任务时遇到了障碍。遇到了一个PHP错误 严重性:通知 消息:未定义的属性:CI_加载程序::$db 文件名:views/templateadmin。php 电话号码:311 回溯: 文件:C:\xampp\htdocs\website\application\views\templateadmin。php行:311函数:\u错误\u处理程序 文件:C:\xampp\htdoc

  • 我有这个代码,其中数据被定义,就我所能看到的,这些是我得到的错误: 遇到PHP错误 严重性:通知 消息:未定义变量:empdata 文件名:视图/employee.php 电话号码:51** 回溯: 文件:C:\xampp\htdocs\providentfund\application\views\employee。php行:51函数:\u错误\u处理程序 File: C:\xampp\htdo

  • 我是codeigniter的初学者,我正在制作一个用于学习的基本积垢。我在索引中遇到了一个错误。php 遇到PHP错误严重性:注意:消息:未定义变量:posts 文件名:posts/index。php 行号:2 回溯: 文件:/opt/lampp/htdocs/codeigniter/application/views/posts/index。php 行:2 函数:\u错误\u处理程序 文件:/o

  • 我有这行代码在PHP中读取一个文件的CSV格式与MySQL数据库的结构,并显示创建它所需的SQL代码。我在这里遇到的唯一问题是,我不能打印出主键变量,因为它说它没有定义,即使我之前定义了它。有人能帮我解释一下为什么会出现这个错误吗?这是我的代码:

  • 问题内容: 我是Codeigniter模型的新手,我尝试按照文档中的步骤加载所有在数据库中注册的用户。 这是我的模型: 这是我的控制器: 它显示错误: 致命错误: 在第30行的G:\ xampp \ htdocs \ fiksi \ system \ application \ models \ user.php中的非对象上调用成员函数query() 第30行,请参阅上方的评论… 问题答案: 您必