CI(CodeIgniter)框架实现图片上传的方法


Posted in PHP onMarch 24, 2017

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

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

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

<html>
  <head>
    <title>Upload Form</title>
  </head>
  <body>
      <?php echo $error;?>
      <?php echo form_open_multipart('upload/do_upload');?>
      <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('test',array("error"=>''));
  }
  public function do_upload(){
    $config['upload_path']='./uploads/';
    $config['allowed_types']='gif|jpg|png';
    $config['max_size']=100;
    $config['max_width']=1024;
    $config['max_height']=768;
    $this->load->library('upload',$config);
    if(!$this->upload->do_upload('userfile')){
      $error=array('error'=>$this->upload->display_errors());
      $this->load->view('test',$error);
    }else{
      $data=array('upload_data'=>$this->upload->data());
      $this->load->view('upload_success',$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>

希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP Array交叉表实现代码
Aug 05 PHP
PHP 小心urldecode引发的SQL注入漏洞
Oct 27 PHP
分享一个PHP数据流应用的简单例子
Jun 01 PHP
Windows下的PHP安装文件线程安全和非线程安全的区别
Apr 23 PHP
成为好程序员必须避免的5个坏习惯
Jul 04 PHP
ThinkPHP验证码和分页实例教程
Aug 22 PHP
标准PHP的AES加密算法类
Mar 12 PHP
php-redis中的sort排序函数总结
Jul 08 PHP
反射调用private方法实践(php、java)
Dec 21 PHP
PHP二维数组矩形转置实例
Jul 20 PHP
使用PHP开发留言板功能
Nov 19 PHP
基于PHP+Mysql简单实现了图书购物车系统的实例详解
Aug 06 PHP
PHP的自定义模板引擎
Mar 24 #PHP
ThinkPHP模板标签eq if 中区分0,null,false的方法
Mar 24 #PHP
利用ajax和PHP实现简单的流程管理
Mar 23 #PHP
CodeIgniter框架基本增删改查操作示例
Mar 23 #PHP
Paypal实现循环扣款(订阅)功能
Mar 23 #PHP
PHP+JQUERY操作JSON实例
Mar 23 #PHP
php实现多维数组排序的方法示例
Mar 23 #PHP
You might like
Syphon 虹吸式咖啡壶冲煮–拨动法
2021/03/03 冲泡冲煮
15种PHP Encoder的比较
2007/04/17 PHP
php获取qq用户昵称和在线状态(实例分析)
2013/10/27 PHP
PHP打开和关闭文件操作函数总结
2014/11/18 PHP
CentOS 安装 PHP5.5+Redis+XDebug+Nginx+MySQL全纪录
2015/03/25 PHP
强制设为首页代码
2006/06/19 Javascript
JavaScript 密码强度判断代码
2009/09/05 Javascript
JavaScript instanceof 的使用方法示例介绍
2013/10/23 Javascript
javascript框架设计读书笔记之字符串的扩展和修复
2014/12/02 Javascript
jQuery取消ajax请求的方法
2015/06/09 Javascript
jQuery实现可高亮显示的二级CSS菜单效果
2015/09/01 Javascript
jQuery实现浮动层随浏览器滚动条滚动的方法
2015/09/22 Javascript
AngularJS中实现用户访问的身份认证和表单验证功能
2016/04/21 Javascript
JavaScript ES6中CLASS的使用详解
2016/11/22 Javascript
ajax接收后台数据在html页面显示
2017/02/19 Javascript
基于JavaScript实现活动倒计时效果
2017/04/20 Javascript
js排序与重组的实例讲解
2017/08/28 Javascript
JavaScript实现图片本地预览功能【不用上传至服务器】
2017/09/20 Javascript
在vue中更换字体,本地存储字体非引用在线字体库的方法
2018/09/28 Javascript
Webstorm2016使用技巧(SVN插件使用)
2018/10/29 Javascript
小程序红包雨的实现示例
2019/02/19 Javascript
JavaScript中十种一步拷贝数组的方法实例详解
2019/04/22 Javascript
vue3.0 项目搭建和使用流程
2021/03/04 Vue.js
在树莓派2或树莓派B+上安装Python和OpenCV的教程
2015/03/30 Python
Python 数据结构之堆栈实例代码
2017/01/22 Python
Mac中Python 3环境下安装scrapy的方法教程
2017/10/26 Python
JS设计模式之责任链模式实例详解
2018/02/03 Python
Python并行分布式框架Celery详解
2018/10/15 Python
CSS3实现头像旋转效果
2017/03/13 HTML / CSS
Marks & Spencer爱尔兰:英国马莎百货
2016/04/20 全球购物
英国最大的运动营养公司之一:LA Muscle
2018/07/02 全球购物
大学生职业规划前言模板
2013/12/27 职场文书
欠款纠纷起诉状
2015/05/19 职场文书
python urllib库的使用详解
2021/04/13 Python
Mysql MVCC机制原理详解
2021/04/20 MySQL
python 中[0]*2与0*2的区别说明
2021/05/10 Python