Codeigniter视图未定义的变量错误

我有一个用于管理商店中商品的程序。一切正常。然后,我需要获得一份针对已发布项目的update_stock_id报告。

尝试以下代码

控制器

class Reports extends FZ_Controller
{

    function __construct()
    {
        parent::__construct();
        $this->load->library('form_validation');

        $this->load->model('Report_model');

    }
public function printIssuedItems($id)
    {
        $data['issuedDetail'] = $this->Report_model->printIssuedItemData($id);
        $this->load->view('reports/printIssuedItems',$data);
    }
}

型号

function printIssuedItemData($id)
    {
        $this->db->select('store_update_stock.request_no,store_update_stock.billed_date,tbl_user.username,store_item.item_name,sum(store_update_stock_details.r_qty) as r_qty,sum(store_update_stock_details.ap_qty) as ap_qty,sum(store_update_stock_details.is_qty) as is_qty');
        $this->db->from('store_update_stock');
        $this->db->join('store_update_stock_details','store_update_stock.update_stock_id=store_update_stock_details.update_stock_id');
        $this->db->join('tbl_user','store_update_stock.supplier=tbl_user.userId');
        $this->db->join('store_item','store_update_stock_details.item=store_item.item_id','right');
        $this->db->where(array('store_update_stock.update_stock_id' => $id,'store_update_stock_details.status' => 1));
        $this->db->group_by('store_update_stock_details.item');

        $q = $this->db->get();
        if ($q->num_rows() > 0) {
            return $q->result();
        }
        return false;


    }

查看(相关部分)

<?php
if (!empty($issuedDetail)) {
    $issuedData = $issuedDetail[0];
}
?>

<div class="col-xs-12">
            <h2 class="page-header">

                <small class="text-center"> Request No: <b><?=$issuedData->request_no?></b>&nbsp;&nbsp;&nbsp;&nbsp;
                Request Date: <b><?=$issuedData->billed_date?></b>&nbsp;&nbsp;&nbsp;&nbsp;
                Officer Name: <b><?=$issuedData->username?></b></small>
            </h2>
     </div>

模型输出正确的结果集。但是执行该视图时,会显示以下错误消息。

  

遇到PHP错误
  严重性:通知
  消息:未定义的变量:issuedData
  文件名:reports / printIssuedItems.php
  行号:52

回溯:

  

文件:
C:\ xampp \ htdocs \ wpsstores \ application \ views \ reports \ printIssuedItems.php
  线:52
  函数:_error_handler

这是指变量$issuedData

我已经检查了代码的每个部分。但没有发现任何问题。

ZYTLXJ 回答:Codeigniter视图未定义的变量错误

为了避免视图中出现未定义的变量错误,如果数据库查询不返回任何结果,则需要从HTML代码中排除执行代码。

更改:

<?php
if (!empty($issuedDetail)) {
    $issuedData = $issuedDetail[0];
}
?>
YOUR HTML CODE

收件人:

<?php
if (!empty($issuedDetail)):
    $issuedData = $issuedDetail[0];
?>
YOUR HTML CODE
<?php else:?>no records found
<?php endif?>

如果查询返回记录,这将显示html代码,否则显示“无记录”消息

本文链接:https://www.f2er.com/3158207.html

大家都在问