我想显示来自数据库的所有记录。但是当我想显示记录时,浏览器显示错误,错误是: "
遇到PHP错误
严重性:错误
消息:不能使用stdClass类型的对象作为数组
文件名:views / show_designation.php
行号:53
回溯: "
查看
<?php print_r($designation); $i=1;foreach($designation as $desig): ?>
<tr>
<td><?php echo $i; ?></td>
<td><?php echo $desig['name']; ?></td> This is (LINE 53)
<td><a href="<?php echo base_url('index.php/designation/delete_designation/'.$desig[$i]->dkey);?>"><input type="button" value="Delete" class="btn btn-danger"/></a>
<td class="numeric"><a id= "<?php echo $desig[$i]->dkey; ?>" onclick="edit_designation('<?php echo $designation[$i]->dkey; ?>')" data-target="#myModal" data-toggle="modal" style="color:#ffffff;" href="#myModal"><button class="btn blue" type="button">Edit</button>
</tr>
<?php $i++;endforeach;?>
控制器
public function get_designation()
{
$this->load->model('designation_model');
$userlist=$this->designation_model->get_alldesignation_model();
$data['designation']=$userlist;
$this->load->view('show_designation',$data);
}//edit_project
模型
public function get_alldesignation_model()
{
$query = $this->db->get('designations');
$result=$query->result();
return $result;
}
答案 0 :(得分:1)
您正在使用需要对象语法的数组语法。取代
$desig['name']
与
$desig->name
注意:在引用$desig[$i]
的行中,您会遇到同样的问题。我不确定你在那里尝试做什么,但看起来你正在将for
循环中的一些语法混合到你的foreach
循环中。如果我理解正确,您只需将[$i]
放在您使用它的每个地方。
答案 1 :(得分:1)
使用查询结果作为数组说
$result=$query->result_array();
因为默认情况下结果作为对象
返回答案 2 :(得分:0)
试试这个
模型 中的
/target
查看 中的
public function get_alldesignation_model()
{
$query = $this->db->get('designations');
$result=$query->result_array();//Store data as Array
return $result;
}