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 相关文章推荐
Search File Contents PHP 搜索目录文本内容的代码
Feb 21 PHP
php实现文件下载更能介绍
Nov 23 PHP
合并ThinkPHP配置文件以消除代码冗余的实现方法
Jul 22 PHP
php删除左端与右端空格的方法
Nov 29 PHP
php用户注册时常用的检验函数实例总结
Dec 22 PHP
php实现分页显示
Nov 03 PHP
php实现图片上传、剪切功能
May 07 PHP
Yii2.0表关联查询实例分析
Jul 18 PHP
thinkphp3.2实现在线留言提交验证码功能
Jul 19 PHP
PHP面向对象程序设计之对象的遍历操作示例
Jun 12 PHP
php设计模式之组合模式实例详解【星际争霸游戏案例】
Mar 27 PHP
如何在Laravel之外使用illuminate组件详解
Sep 20 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
动态生成gif格式的图像要注意?
2006/10/09 PHP
php数组函数序列之array_unique() - 去除数组中重复的元素值
2011/10/29 PHP
PHP实现检测客户端是否使用代理服务器及其匿名级别
2015/01/07 PHP
laravel5.2实现区分前后台用户登录的方法
2017/01/11 PHP
PHP自动补全表单的两种方法
2017/03/06 PHP
数组Array进行原型prototype扩展后带来的for in遍历问题
2010/02/07 Javascript
jquery+json实现的搜索加分页效果
2010/03/31 Javascript
Safari5中alert的无限循环BUG
2011/04/07 Javascript
兼容ie、firefox的图片自动缩放的css跟js代码分享
2012/01/21 Javascript
javaScript的函数对象的声明详解
2015/02/06 Javascript
基于jquery css3实现点击动画弹出表单源码特效
2015/08/31 Javascript
jquery实现的点击翻书效果代码
2015/11/04 Javascript
JS转换HTML转义符的方法
2016/08/24 Javascript
AngularJS入门教程之Cookies读写操作示例
2016/11/02 Javascript
基于NodeJS+MongoDB+AngularJS+Bootstrap开发书店案例分析
2017/01/12 NodeJs
Javascript中 带名 匿名 箭头函数的重要区别(推荐)
2017/01/29 Javascript
详解vue 模拟后台数据(加载本地json文件)调试
2017/08/25 Javascript
基于Bootstrap框架菜鸟入门教程(推荐)
2017/09/17 Javascript
jQuery实现的表格前端排序功能示例
2017/09/18 jQuery
webpack4实现不同的导出类型
2019/04/09 Javascript
vue 验证码界面实现点击后标灰并设置div按钮不可点击状态
2019/10/28 Javascript
详解为element-ui的Select和Cascader添加弹层底部操作按钮
2020/02/07 Javascript
vue自定义标签和单页面多路由的实现代码
2020/05/03 Javascript
[01:51]2014DOTA2西雅图邀请赛 MVP 外卡赛black场间采访
2014/07/09 DOTA
python django集成cas验证系统
2014/07/14 Python
Tornado 多进程实现分析详解
2018/01/12 Python
Python sys模块常用方法解析
2020/02/20 Python
python使用matplotlib的savefig保存时图片保存不完整的问题
2021/01/08 Python
Python实现钉钉/企业微信自动打卡的示例代码
2021/02/02 Python
莫斯科珠宝厂官方网站:Miuz
2020/09/19 全球购物
自荐信格式范文
2013/10/07 职场文书
思想品德自我评价
2014/02/04 职场文书
学习雷锋演讲稿
2014/05/10 职场文书
倡议书格式及范文
2015/04/29 职场文书
HTML CSS 一个标签实现带动画的抖音LOGO
2022/04/26 HTML / CSS
在ubuntu下安装go开发环境的全过程
2022/08/05 Golang