Rumah  >  Artikel  >  pembangunan bahagian belakang  >  详解CI框架实现图片上传的方法

详解CI框架实现图片上传的方法

黄舟
黄舟asal
2017-03-27 09:34:271720semak imbas

这篇文章主要介绍了CI(CodeIgniter)框架实现图片上传的方法,结合实例形式分析了基于CodeIgniter调用文件上传类实现图片上传功能的相关操作技巧,需要的朋友可以参考下

本文实例讲述了CodeIgniter框架实现图片上传的方法。分享给大家供大家参考,具体如下:

对于图片上传这种老生常谈的问题,在此我不得不再次重复一次,因为对于这框架毕竟有些地方值得自己学习与借鉴,这篇文章我是借助官方文档来写的,但有些地方任然需要标明一下。

下面我们来看看图片上传吧。首先在“./application/views/”文件夹下创一个视图文件:text.php,代码如下:

<html>
  <head>
    <title>Upload Form</title>
  </head>
  <body>
      <?php echo $error;?>
      <?php echo form_open_multipart(&#39;upload/do_upload&#39;);?>
      <input type="file" name="userfile" size="20"/>
      <br><br>
      <input type="submit" value="upload"/>
      </form>
  </body>
</html>

Codeigniter有自己非常丰富upload类库,下面我们来看看控制器,在Controller中一个Upload.php文件,代码如下:

class Upload extends CI_Controller{
  public function construct(){
    parent::construct();
    $this->load->helper("form","url");
  }
  public function index(){
    $this->load->view(&#39;test&#39;,array("error"=>&#39;&#39;));
  }
  public function do_upload(){
    $config[&#39;upload_path&#39;]=&#39;./uploads/&#39;;
    $config[&#39;allowed_types&#39;]=&#39;gif|jpg|png&#39;;
    $config[&#39;max_size&#39;]=100;
    $config[&#39;max_width&#39;]=1024;
    $config[&#39;max_height&#39;]=768;
    $this->load->library(&#39;upload&#39;,$config);
    if(!$this->upload->do_upload(&#39;userfile&#39;)){
      $error=array(&#39;error&#39;=>$this->upload->display_errors());
      $this->load->view(&#39;test&#39;,$error);
    }else{
      $data=array(&#39;upload_data&#39;=>$this->upload->data());
      $this->load->view(&#39;upload_success&#39;,$data);
    }
  }
}

下面在视图中创建另外一个文件upload_success.php

<html>
  <head>
    <title>Upload Form</title>
  </head>
  <body>
    <h3>Your file was successfully uploaded!</h3>
    <ul>
      <?php <foreach($upload_data as $item=>$value):?>
      <li>
        <?php echo $item;?>:<?php echo $value;?>
      </li>
      <?php?>
    </ul>
  </body>
</html>

Atas ialah kandungan terperinci 详解CI框架实现图片上传的方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn