CodeIgniter上传图片成功的全部过程分享


Posted in PHP onAugust 12, 2013

最近几天正在做一个小型CMS,用到图片上传了,想利于CodeIgniter的上传类去实现,但测试中有好多问题,我把经过和要注意的地方分享一下!

<?php echo form_open_multipart('picture/upload');?>
<?php echo form_upload('userfile');?> 
/*注意,这里是userfile,$this->upload->do_upload(),这里do_upload默认上传文件的表单名为userfile;
当然也可以使用do_upload($filename),这里的$filename一定要和form_upload()里面的字符串一致.
我在这里范了糊涂,最后看了手册才明白,希望大家注意哦!
*/
<?php echo form_close();?>
controller代码:
 function upload() {
        $config['upload_path'] = './uploads/'; 
        /*这里的uploads是相对于index.php的,也就是入口文件,这个千万不要弄错哦!
        否则就会报错"The upload path does not appear to be valid."; 
        */
        $config['allowed_types'] = 'gif|jpg|png';
        /*我试着去上传其它类型的文件,这里一定要注意顺序! 
        A problem was encountered while attempting to move the uploaded file to the final destination.
        这个错误一般是上传文件的文件名不能是中文名,这个很郁闷!还未解决,大家可以用其它方法,重新改一下文件名就可以解决了!  
        $config['allowed_types'] = 'zip|gz|png|gif|jpg';(正确)
        $config['allowed_types'] = 'png|gif|jpg|zip|gz';(错误)
        */
        $config['max_size'] = '1024';
        $config['max_width']  = '1024';
        $config['max_height']  = '768';
        $config['file_name']  = time(); //文件名不使用原始名
        $this->load->library('upload', $config);
        if(!$this->upload->do_upload()) {
                echo $this->upload->display_errors();
        }else{
             $data['upload_data']=$this->upload->data();  //文件的一些信息
             $img=$data['upload_data']['file_name'];  //取得文件名
             echo $img."<br>";
             foreach($data['upload_data'] as $item => $value){
             echo $item.":".$value."<br>";
            }
       }
}
PHP 相关文章推荐
PHP 中的面向对象编程:通向大型 PHP 工程的办法
Dec 03 PHP
PHP遍历数组的几种方法
Mar 22 PHP
php命令行(cli)模式下报require 加载路径错误的解决方法
Nov 23 PHP
PHP实现查询两个数组中不同元素的方法
Feb 23 PHP
Symfony2学习笔记之插件格式分析
Mar 17 PHP
php使用CURL模拟GET与POST向微信接口提交及获取数据的方法
Sep 23 PHP
PHP实现生成数据字典功能示例
May 24 PHP
php微信开发之关注事件
Jun 14 PHP
PHP按符号截取字符串的指定部分的实现方法
Sep 10 PHP
yii2 在控制器中验证请求参数的使用方法
Jun 19 PHP
PHP使用 Pear 进行安装和卸载包的方法详解
Jul 08 PHP
laravel5.6 框架操作数据 Eloquent ORM用法示例
Jan 26 PHP
php实现MD5加密16位(不要默认的32位)
Aug 12 #PHP
php中的Base62类(适用于数值转字符串)
Aug 12 #PHP
PHP实现把数字ID转字母ID
Aug 12 #PHP
PHP计算2点经纬度之间的距离代码
Aug 12 #PHP
php读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法
Aug 10 #PHP
浅析php中常量,变量的作用域和生存周期
Aug 10 #PHP
浅析linux下apache服务器的配置和管理
Aug 10 #PHP
You might like
PHP 程序员的调试技术小结
2009/11/15 PHP
php中取得URL的根域名的代码
2011/03/23 PHP
浅谈web上存漏洞及原理分析、防范方法(安全文件上存方法)
2013/06/29 PHP
php实现的支持断点续传的文件下载类
2014/09/23 PHP
php实现图片等比例缩放代码
2015/07/23 PHP
PHP超级全局变量【$GLOBALS,$_SERVER,$_REQUEST等】用法实例分析
2019/12/11 PHP
php实现文件上传基本验证
2020/03/04 PHP
javascript比较文档位置
2008/04/08 Javascript
SWFObject 2.1以上版本语法介绍
2010/07/10 Javascript
js获取location.href的参数实例代码
2013/08/02 Javascript
IE浏览器中图片onload事件无效的解决方法
2014/04/29 Javascript
js图片滚动效果时间可随意设定当鼠标移上去时停止
2014/06/26 Javascript
谈谈jQuery Ajax用法详解
2015/11/27 Javascript
详解微信小程序入门五: wxml文件引用、模版、生命周期
2017/01/20 Javascript
超全面的javascript中变量命名规则
2017/02/09 Javascript
js 单引号替换成双引号,双引号替换成单引号的实现方法
2017/02/16 Javascript
详谈jQuery unbind 删除绑定事件 / 移除标签方法
2017/03/02 Javascript
electron demo项目npm install安装失败的解决方法
2018/02/06 Javascript
mpvue构建小程序的方法(步骤+地址)
2018/05/22 Javascript
webpack css加载和图片加载的方法示例
2018/09/11 Javascript
vue+Element实现搜索关键字高亮功能
2019/05/28 Javascript
JS实现前端路由功能示例【原生路由】
2020/05/29 Javascript
JavaScript实现沿五角星形线摆动的小圆实例详解
2020/07/28 Javascript
详解vue-router的导航钩子(导航守卫)
2020/11/02 Javascript
vue从后台渲染文章列表以及根据id跳转文章详情详解
2020/12/14 Vue.js
python中去空格函数的用法
2014/08/21 Python
pandas 取出表中一列数据所有的值并转换为array类型的方法
2018/04/11 Python
python学生管理系统开发
2019/01/30 Python
django 解决扩展自带User表遇到的问题
2020/05/14 Python
pandas dataframe 中的explode函数用法详解
2020/05/18 Python
Python3.9新特性详解
2020/10/10 Python
python 获取字典键值对的实现
2020/11/12 Python
css3 实现圆形旋转倒计时
2018/02/24 HTML / CSS
房屋授权委托书范本
2014/10/07 职场文书
2015年小学生国庆节演讲稿
2015/07/30 职场文书
JS新手入门数组处理的实用方法汇总
2021/04/07 Javascript