遇到PHP错误严重性:通知消息:未定义属性:stdClass::$moderator_id,使用编码器


A PHP Error was encountered Severity: Notice Message: Undefined property: stdClass::$moderator_id, using codeigniter

嘿伙计们,我是新的编码器,我正在一个应用程序中,我必须从mysql数据库中获取数据,为此目的,我在控制器中制作两个视图和两个函数来处理视图。问题是,我得到了错误在一个视图,而在另一个视图的工作很好…两个视图有相同的代码…错误在哪里,请帮帮我。

两个视图中的代码

 <?php foreach ($rows as $row):?>
            <tr>
                <td><?php echo anchor("Home/edit_moderator/" . $row->member_id, 'Edit'); ?></td>
                <td><a href="<?php echo site_url("dbcont/deletemoderator/" . $row->member_id);?>" onclick="return confirm('Delete content?');">Delete</a></td>
                <td><?php echo $row->member_name;  ?></td>
                <td><?php echo $row->moderator_id;  ?></td>
                <td><?php echo $row->kcc_branch;  ?></td>
                <td><?php echo $row->father_name;  ?></td>
                <td><?php echo $row->address;  ?></td>
                <td><?php echo $row->date;  ?></td>
            </tr>
            <?php endforeach; ?>

获取moderator_id

时出现错误
<td><?php echo $row->moderator_id;  ?></td>

在第一个视图中被获取,但在第二个视图中没有。

编辑:

这是模型

function get_moderators(){ 
    $select =   array(
                    'member_id', 
                    'member_name', 
                    'father_name', 
                    'date', 
                    'kcc_branch', 
                    'date_of_birth', 
                    'address', 
                    'phone', 
                    'mobile', 
                    'occupation', 
                    'pan', 
                    'bank_name', 
                    'bank_acc_no', 
                    'bank_branch', 'moderator'
    );
$this->db->select($select); 
$this->db->where('moderator', 1); 
$q = $this->db->get('tbl_members'); 
    if($q->num_rows() > 0) { 
        foreach ($q->result() as $row) { 
            $data[] = $row; 
        }
        return $data; 
    } 
}

我得到了答案。我的错误是我在选择查询中没有选择moderator_id .这里是答案,谢谢回答的家伙。

function get_moderators(){ 
$select =   array(
                'member_id',
                'moderator_id', 
                'member_name', 
                'father_name', 
                'date', 
                'kcc_branch', 
                'date_of_birth', 
                'address', 
                'phone', 
                'mobile', 
                'occupation', 
                'pan', 
                'bank_name', 
                'bank_acc_no', 
                'bank_branch', 'moderator'
);

$this->db->select($select); 
$this->db->where('moderator', 1); 
$q = $this->db->get('tbl_members'); 
if($q->num_rows() > 0) { 
    foreach ($q->result() as $row) { 
        $data[] = $row; 
    }
    return $data; 
} 
}

你可以去掉select数组,直接使用

$ this -> db ->选择("*");

也可以

我有一个类似的错误,结果证明我的数据库选择语句是错误的。

$ this -> db ->选择(‘field1’,‘field2’,‘field3’,‘field4’);//坏代码

这是正确的做法:

$this->db->select('field1, field2, field3, field4');//好

$ this -> db ->选择("*");//还好