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 相关文章推荐
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
Jan 29 PHP
PHP6 先修班 JSON实例代码
Aug 23 PHP
Php Cookie的一个使用注意点
Nov 08 PHP
php 文章采集正则代码
Dec 28 PHP
关于php正则匹配汉字的方法介绍
Apr 25 PHP
php开发中的页面跳转方法总结
Apr 26 PHP
php简单实现批量上传图片的方法
May 09 PHP
php将print_r处理后的数据还原为原始数组的解决方法
Nov 02 PHP
Laravel 集成 Geetest验证码的方法
May 14 PHP
PHP检查URL包含特定字符串实例方法
Feb 11 PHP
php-fpm中max_children的配置
Mar 15 PHP
php中使用array_filter()函数过滤数组实例讲解
Mar 03 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对象转换为数组函数(递归方法)
2012/02/04 PHP
页面乱码问题的根源及其分析
2013/08/09 PHP
php中通过curl检测页面是否被百度收录
2013/09/27 PHP
php 实现银联商务H5支付的示例代码
2019/10/12 PHP
javascript 二进制运算技巧解析
2012/11/27 Javascript
利用浏览器全屏api实现js全屏
2014/01/16 Javascript
理解JS绑定事件
2016/01/19 Javascript
Bootstrap每天必学之折叠
2016/04/12 Javascript
jQuery 选择同时包含两个class的元素的实现方法
2016/06/01 Javascript
a标签跳转到指定div,jquery添加和移除class属性的实现方法
2016/10/10 Javascript
seajs学习教程之基础篇
2016/10/20 Javascript
原生js实现倒计时功能(多种格式调用)
2017/01/12 Javascript
jQuery点击弹出层弹出模态框点击模态框消失代码分享
2017/01/21 Javascript
js实现文字列表无缝滚动效果
2017/06/23 Javascript
angular json对象push到数组中的方法
2018/02/27 Javascript
nodejs(officegen)+vue(axios)在客户端导出word文档的方法
2018/07/31 NodeJs
python中 ? : 三元表达式的使用介绍
2013/10/09 Python
Python从MP3文件获取id3的方法
2015/06/15 Python
Python中利用xpath解析HTML的方法
2018/05/14 Python
攻击者是如何将PHP Phar包伪装成图像以绕过文件类型检测的(推荐)
2018/10/11 Python
Pycharm之快速定位到某行快捷键的方法
2019/01/20 Python
Python基于pygame实现单机版五子棋对战
2019/12/26 Python
Python ORM框架Peewee用法详解
2020/04/29 Python
使用keras实现非线性回归(两种加激活函数的方式)
2020/07/05 Python
美国首屈一指的高品质珠宝设计师和零售商:Allurez
2018/01/23 全球购物
如何开启linux的ssh服务
2015/02/14 面试题
电子商务专业学生的自我鉴定
2013/11/28 职场文书
最新创业融资计划书
2014/01/19 职场文书
商务日语专业的自荐信
2014/05/23 职场文书
2014四风问题对照检查材料范文
2014/09/15 职场文书
考试作弊检讨书范文
2015/01/27 职场文书
2015年师德师风自我评价范文
2015/03/05 职场文书
2015大学生暑期实习报告
2015/07/13 职场文书
2016银行招聘自荐信
2016/01/28 职场文书
Python中三种花式打印的示例详解
2022/03/19 Python
python创建字典及相关管理操作
2022/04/13 Python