在codeigniter中选择文件名后显示图像


display image after selecting the filename in codeigniter

控制器:

public function do_register()
{
    $path = $_FILES['image']['name'];
    $imgext=strtolower(strrchr($path,'.'));
    $imgname= $this->generateRandomString().$imgext;
    if($path!='')
    {
        $im= $this->config->item('base_url').'/uploads'.'/'.$imgname;
        $x=$this->do_upload($imgname);
        $data['img']=$im;
    }
    $this->search_model->register_user($data);
    $this->load->view('register_view');  
}
function generateRandomString()
{
    $characters = '0123456789abcdefghijklmnopqrstuvwxyz';
    $randomString = '';
    for ($i = 0; $i < 8; $i++)
    {
        $randomString .= $characters[rand(0, strlen($characters) - 1)];
    }
    return $randomString;
}
function do_upload($img)
{
    $config['upload_path'] = './uploads/';
    $config['allowed_types'] = 'gif|jpg|png';
    $config['max_size'] = '575000';
    $config['file_name'] = $img;
    $this->load->library('upload',$config);
    if ( ! $this->upload->do_upload('image'))
    {
        $error = array('error' => $this->upload->display_errors());
    }
    else
    {
        $data = array('upload_data' => $this->upload->data());
        return $data;
    }
    return;
}

这是用于上传图像的控制器。当我选择要上传的图像时,在选择文件名时不显示图像?解决这个问题的办法是什么?选择文件名后如何显示图像?请为此提供代码?

对于上传前的图像预览,请检查此FIDDLE。

用于限制上载大小的代码。

  $(document).on('change','.coverimage',function(){
      files = this.files;
      size = files[0].size;
      //max size 50kb => 50*1000
      if( size > 1000141){
         alert('Please upload less than 1mb file');
         return false;
      }
      return true;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form role="form" method="post" enctype="multipart/form-data">
   <div class="form-group">
      <label for="file">Choose your Image: </label>
      <input type="file"  class="coverimage" id="file1" name="file[]" multiple>
   </div>
   <button id='submit_btn' class="btn btn-default">upload</button>
</form>

您可以使用javascript来完成此操作。我希望它能帮助你。