遇到PHP错误
严重性:注意
消息:尝试获取非对象的属性
文件名:views / index.php
行号:214
回溯:
文件:C:\ Program Files (86)\的EasyPHP-DevServer-14.1VC9 \数据\ localweb \ masterlinkci2 \应用\站点\视图\的index.php 行:214函数:_error_handler
文件:C:\ Program Files (86)\的EasyPHP-DevServer-14.1VC9 \数据\ localweb \ masterlinkci2 \应用\站点\控制器\ Cspages.php 行:32功能:视图
文件:C:\ Program Files (86)\的EasyPHP-DevServer-14.1VC9 \数据\ localweb \ masterlinkci2 \的index.php 行:315功能:require_once
视图/ index.php的
第214行:
<?php foreach($pic as $pic_item): ?>
<img src="<?php echo base_url('assets1/images/slider/'.$pic->pic_item
);?>">
控制器/ Cspages.php
public function index()
{
$this->load->helper('url');
$this->load->model('gallery_model');
// slider
$pic_unique_id = 18;
$data['pic'] = $this->gallery_model->get_picture($pic_unique_id);
$this->load->view('index', $data);
}
模型/ Gallery_model.php
class Gallery_model extends CI_Model {
public function __construct()
{
parent::__construct();
$this->load->database();
}
public function get_picture($pic_unique_id)
{
$query = $this->db->get_where('galleries_pictures', array('picture_unique_id' => $pic_unique_id));
return $query->result();
}
}
如何修复此错误消息,任何线索? (第214行)
答案 0 :(得分:0)
在模型中返回$query->row()
而不是$query->result()
。
public function get_picture($pic_unique_id)
{
$query = $this->db->get_where('galleries_pictures', array('picture_unique_id' => $pic_unique_id));
return $query->row();
}
row()
方法返回第一个匹配的行。如果您使用result()
,则需要在视图中使用foreach
循环。
有关详情,请参阅此处Codeigniter Results Formats
答案 1 :(得分:0)
而不是这个$ this-&gt; load-&gt; database();
"Address.FlatNo": {
require_from_group: [1, ".building-group"],
rangelength: [1, 50],
onlyspacecheck:true
},
"Address.BuildingNo": {
require_from_group: [1, ".building-group"],
rangelength: [1, 50],
onlyspacecheck:true
},
"Address.BuildingName": {
require_from_group: [1, ".building-group"],
rangelength: [1, 50],
onlyspacecheck:true
},
您缺少的表名
$autoload['libraries'] = array('database');
或尝试
public function get_picture($pic_unique_id) {
$query = $this->db->get_where('tablename', array('picture_unique_id' => $pic_unique_id));
return $query->result();
}
答案 2 :(得分:0)
错误使用
while ($row = mysqli_fetch_assoc($query1)) {
//print_r($row);
$book=$row['book'];echo "<br/>";
echo $book;
}
$ pic是数组
尝试
<?php foreach($pic as $pic_item): ?>
<img src="<?php echo base_url('assets1/images/slider/'.$pic->pic_item
);?>">