在这里,我想使用codeigniter传递url中的id

时间:2018-01-22 10:19:15

标签: php uri

这是我在视图中的代码。我想在url中传递id值,但它显示以下错误

  

严重性:注意

     

消息:尝试获取非对象的属性

     

文件名:views / cameralist.php

查看代码

<?php
foreach($field as $f)
if($f !="id"){
{?>
<div class="values"><?php
echo $f."<br>"; ?></div><br><br><br>
<?php 
echo "<a href = '".base_url()."index.php/product/edit/".$f->id."'>Edit</a>"; 
echo "<a href = '".base_url()."index.php/product/delete/".$f->id."'>Delete</a>"; 
}
}
?>

有什么建议吗?

由于

型号代码

function get_field(){
     $result = $this->db->list_fields('camera_details');
     foreach($result as $field){    
            $data[] = $field;
     }
    return $data;
}

控制器代码

function cameralist(){
    $this->load->model('p_model');
    $data['field'] = $this->p_model->get_field();
    $this->load->view('cameralist',$data);
}

2 个答案:

答案 0 :(得分:0)

您的型号代码

<MapView.Polygon
    coordinates={polygon} />

查看代码     

function get_field(){
$query = $this->db->query("SELECT * FROM camera_details");
return $query->result();
}

更改模型中的代码。这将立即生效

答案 1 :(得分:0)

list_fields()将回显提供的数据库表名的列名。这就是为什么它会返回错误,说你无法获得字符串的偏移量。

因此,请将您的模型代码更改为:

function get_field()
{
   return $this->db->field_data('camera_details');
}

此外,您的字段将作为对象返回,因此请坚持使用对象属性语法:

"index.php/product/edit/".$f->id.

将来如果你遇到一个你不知道返回什么的问题,你应该尝试转储这样的结果,例如:

$result = $this->db->list_fields('camera_details');
var_dump(results)

会显示以下内容:

array(5) {
  [0]=>
  string(2) "id"
  [1]=>
  string(4) "name"
  [2]=>
  string(5) "price"
  [3]=>
  string(10) "lennsensor"
  [4]=>
  string(5) "thick"
}