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

yipeiwu_com6年前PHP代码库

最近几天正在做一个小型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 include_once('./qqwry.php'); $QQWry=new QQWry; funct...

php 生成饼图 三维饼图

php 生成饼图 三维饼图

饼图 复制代码 代码如下: <?php //+------------------------+ //| pie3dfun.PHP//公用函数 | //+-------------...

PHP创建/删除/复制文件夹、文件

学习了PHP的文件编程,其中PHP自身提供了复制文件的函数(copy)。自己也写了一个功能差不多的复制图片的函数,以此在这里记录一下。 在说该函数之前,先介绍一下使用PHP创建/删除文件...

php递归删除目录与文件的方法

本文实例讲述了php递归删除目录与文件的方法。分享给大家供大家参考。具体实现方法如下: <?php function deldir($path){ $dh = ope...

PHP连接SQLServer2005的实现方法(附ntwdblib.dll下载)

PHP连接SQLServer2005的实现方法(附ntwdblib.dll下载)

php连接sql2005的问题,现在整合,同时把FAQ整合上. 我前面写的教程: 连接前配置系统: 1.检查文件 php5.2.5/ntwdblib.dll 默认下面有一个,不能连接再替...