在codeigniter

时间:2016-02-11 00:29:58

标签: php arrays codeigniter

我的问题是如何从数据库中显示数组图像。我调用了这个数组图像,因为当我上传该图像时,我使用数组上传到数据库。

我使用此代码将文件名插入数据库

public function multipost()
{
    $filepath = $this->upload->get_multi_upload_data('file_name'); 

    $filenames = '';

    foreach($filepath as $a) {
        $filenames .= $a['file_name'].",";
    }
    $filenames = rtrim($filenames,',');


    $db_data = array(
        'pic_id'=> NULL,
        'ad_pic'=> $filenames,
    );
    $this->db->insert('technical_slide_img', $db_data);
}

结果

enter image description here

正如您所看到的, ad_pic 列的值为1.jpg,2.jpg。 如果我像这样使用

<?php foreach ($this->header_model->getalldata() as $row) {
        $image_arr = explode("/", $row->image); 
        $image_name = end($image_arr);
 echo base_url().'images/'.$image_name;
} ?> 

显示该图像。有没有办法显示那些图像?或者我需要将这2张图片分成几行吗?

3 个答案:

答案 0 :(得分:1)

替换

<?php 
foreach ($this->header_model->getalldata() as $row) 
{
  $image_arr = explode(",", $row->ad_pic); 
  foreach($image_arr as $image_name) 
  {
    echo base_url().'images/'.$image_name .'<br />';
  }
 } 
?> 

input_list = input_list.sort

答案 1 :(得分:0)

正如我在您的数据库中看到的那样,表格以逗号,保存,您正在使用斜杠/进行爆炸。所以我认为你必须在爆炸功能中用/替换,

<?php foreach ($this->header_model->getalldata() as $row) {
    $image_arr = explode(",", $row->image); 
    $image_name = end($image_arr);
    echo base_url().'images/'.$image_name;
 } ?> 

答案 2 :(得分:-1)

<?php 
    $image_arr = explode(",", $data_user->image);
    foreach($image_arr as $image_name) 
    {?>
        <img style="width:5em;"src="<?php echo base_url().'uploads/'.$image_name?>" class="img-reponsive thumbnail">
        <!-- echo base_url().'images/'.$image_name .'<br />'; -->
    <?php } 
?>