我已经通过表单上传了一张图片并成功将其存储在uploads目录中,并且我还成功地将图像的完整路径存储在我的数据库中。
但是我在视图中显示图像时遇到问题:
观点:
<div class="deal-top-top">
<?php foreach($getAll as $rec) { ?>
<div class="col-md-3 top-deal-top">
<div class=" top-deal">
<a href="single.html" class="mask"><img src="<?php echo base_url('upload/screenshoot/').$rec->ss;?>"class="img-responsive zoom-img" alt=""></a>
<span class="four"><?php echo $rec->data_kategori;?></span>
<div class="deal-bottom">
<div class="top-deal1">
<h5><a href="single.html"><?php echo $rec->nama_aplikasi;?></a></h5>
<p>Instansi: <?php echo $rec->nama_instansi;?></p>
</div>
<div class="top-deal2">
<a href="single.html" class="hvr-sweep-to-right more">More</a>
</div>
<div class="clearfix"> </div>
</div>
</div>
</div>
<?php } ?>
<div class="clearfix"> </div>
</div>
upload / screenshoot是上传目录路径,ss是数据库中的数据名..
控制器
$this->load->view('produk_view',['getKategori' =>$getKategori,'getAll' =>$getAll]);
如果使用数组进行测试:
ss是getAll查询的一部分:
Array
(
[0] => stdClass Object
....
[ss] => 1487492623549.PNG
....
)
错误:
遇到PHP错误
严重性:错误
消息:不能使用stdClass类型的对象作为数组
谢谢
答案 0 :(得分:0)
尝试$rec->ss;
,因为您有array having objects
。
echo $rec->ss;//prints 1487492623549.PNG
<强>更新强>
要使用base_url(),
,您必须先加载URL Helper。这可以在application / config / autoload.php中完成:
$autoload['helper'] = array('url');
或者,手动:
$this->load->helper('url');
然后像这样设置你的图像..
<img src="<?php echo base_url('upload/screenshoot/'.$res->ss);?>" class="img-responsive zoom-img" alt="">
答案 1 :(得分:0)
在您的视图/ HTML端尝试使用
foreach($getAll as $key => $rec)
而不是
foreach($getAll as $rec)