Php 如何修复此错误消息:尝试获取非对象的属性
我正在制作一个简单的CRUD,但我的CRUD应用程序显示了一条错误消息:试图在更新表单中获取非对象的属性。这是我的控制器Php 如何修复此错误消息:尝试获取非对象的属性,php,codeigniter,Php,Codeigniter,我正在制作一个简单的CRUD,但我的CRUD应用程序显示了一条错误消息:试图在更新表单中获取非对象的属性。这是我的控制器 public function ubah($id){ $this->load->model('m_property'); $data = array(); $data['msg'] = $this->_get_flashdata(); $data['category']
public function ubah($id){
$this->load->model('m_property');
$data = array();
$data['msg'] = $this->_get_flashdata();
$data['category'] = $this->m_category->get();
$data['notif'] = $this->m_property->count_properti();
$data['notifikasi'] = $this->m_property->notif_properti();
$data['data'] = $this->m_property->get_id($id);
var_dump($data['data']);
$html = array();
$html['header'] = $this->load->view('admin/header',$data,true);
$html['kiri'] = $this->load->view('admin/kiri',null,true);
$html['content'] = $this->load->view('admin/belanja/ubah',$data,true);
$this->load->view('admin/template',$html);
}
这是我的模型
<?php
class M_property extends CI_Model {
public function get_id($id){
$this->db->where('nID', $id);
$query = $this->db->get('properti');
return $query->result();
}
public function update($id, $data){
$this->db->where('nID', $id);
return $this->db->update('properti', $data);
}
?>
这是我的观点
<div class="row">
<div class="col-md-6">
<h4 class="header green clearfix">
Nama Properti
</h4>
<input class="form-control" type="text" name="nama" value="<?php echo $data->nama ?>" />
</div>
Nama地产
问题是您使用的模型是$query->result()代码>生成一个对象数组。但在你看来,你没有考虑到这一点。相反,假设它只是数组外的一个对象。如果您想要这样做,并且如果您知道您只能得到一行结果,请更改以下内容:
$query->result();
/*
which would result insomething like this:
array[
0 => {
"key" : "value"
}
]
*/
为此:
$query->row();
/*
which would result insomething like this:
{
"key" : "value"
}
*/
来源:从您提到的视图中,我可以在该行看到的唯一对象是$data对象。错误消息“…非对象的属性…”可能表示$data对象不存在或为空。您的问题有点难以理解您试图实现的目标。我正在尝试制作CRUD应用程序,但当我单击要更新的数据并在表单更新中链接到upadate url时,显示了一条错误消息:尝试获取非对象的属性。我想从我的领域获取数据。那么我的代码有什么问题?请帮我拿。。但问题是,您提供的视图是来自以下内容:admin/header.php
还是它位于何处?您应该包含完整的错误消息。错误消息告诉您从何处得到错误(行号和内容)。在谷歌上搜索为什么会出现这样的类型错误。@CodeGodie admin/content.php guysI被更改为$query->result();对于$query->row()位,它仍然显示一个奇怪的错误。。你的代码中肯定还有其他东西没有向我们展示,因为这应该是可行的。如果在运行视图之前var\u dump($data)
会怎么样?你得到了什么?我已经给出了var_dump($data),结果是数组空的
$query->row();
/*
which would result insomething like this:
{
"key" : "value"
}
*/