在codeigniter中显示来自数据库的图像

时间:2016-02-08 11:53:12

标签: php codeigniter

美好的一天!我试图从图像路径中检索存储在数据库中的名称,但我正在努力从文件夹中显示该图像,我稍后会向您解释......这是我的代码。

在我的控制器

public function save()
{
    $url = $this->do_upload();
    $title = $_POST["title"];
    $this->main_m->save($title, $url);
}

public function do_upload()
{
    $type = explode('.', $_FILES["pic"] ["name"]);
    $type = $type[count($type)-1];
    $url = "./images/".uniqid(rand()).'.'.$type;
    if(in_array($type, array("jpg","jpeg","gif","png")))
    if(is_uploaded_file($_FILES["pic"]["tmp_name"]))
        if (move_uploaded_file($_FILES["pic"]["tmp_name"], $url))
    return $url;
}

在我的视图中我试图像这样检索。

 <?php foreach ($this->b->getalldata() as $row) {
      echo '<li>'.
                '<a class="ns-img" href="'.base_url("images/".$row->image).'".></a>'.
                '<div class="caption">'.$row->title.'</div>'.
          '</li>';
              } ?>

在我的模型

public function save($title, $url)
{
    $this->db->set('title', $title);
    $this->db->set('image', $url);
    $this->db->insert('slider');
}

存储到路径文件夹的图像以及存储到数据库的图像的新名称,但显示图像不适合我。我的图像路径文件夹是&#34;图像&#34;存储到数据库的图像名称为&#34; ./ images / new_name.jpg&#34;与存储到文件夹路径的图像名称不同。存储到文件夹路径的图像名称没有./ images / only new_name.jpg ...

如何显示该图片?有人试过吗?帮助!

5 个答案:

答案 0 :(得分:1)

您需要从“./images/new_name.jpg”爆炸图像名称。

$image_arr = explode("/", "./images/new_name.jpg");

echo $image_name = end($image_arr);

答案 1 :(得分:0)

  

我们使用了codeigniter上传库

 $this->load->library('image_lib');
         $config = array(
                        'upload_path' => APPPATH."upload/folder",
                        'allowed_types' => "gif|jpg|png|jpeg",
                        'overwrite' => TRUE,
                        'max_size' => "2048000"
                    );


  $this->load->library('upload', $config);
  $this->upload->do_upload('pic');

答案 2 :(得分:0)

您需要img HTML标记:

<img src="<?php echo base_url('images/' . $row->image);?>">

答案 3 :(得分:0)

试试这个

观看视频

 <?php foreach ($this->b->getalldata() as $row) {
     echo '<li>'.
       '<a class="ns-img" href="#">'.base_url().'images/'.$row->image.'</a>'.
            '<div class="caption">'.$row->title.'</div>'.
      '</li>';
   } ?>     

答案 4 :(得分:-1)

您在此处遇到错误.base_url("images/".$row->image).' n尝试使用site_url('images').'/'.$row->image 我希望你能得到你文件的正确路径。