Codeigniter视频上传无效

时间:2015-02-25 02:04:28

标签: php codeigniter video

我正在使用以下代码进行视频上传。

<?php

class upload_videos extends Admin_Controller {
    function __construct() {
        parent::__construct();
        $this->load->helper('form');
    }

    function index () {
        $this->load->view('admin/upload_form', array('error'=> ''));
    }

    function do_upload() {
        $config['upload_path'] = './uploads';
        $config['allowed_types'] = 'mov|mpeg|mp3|avi';
        $config['max_size']= '';
        $config['overwrite'] = FALSE;
        $config['remove_spaces'] = TRUE;
        $config['encrypt_name'] = TRUE;
        $this->load->library('upload', $config);

        if(!$this->upload->do_upload()) {
            $error = array('error'=>$this->upload->display_errors() . ' hi');
            $this->load->view('admin/upload_form', $error);
        } else {
            echo 'asasas';
            $data = array('upload_data'=>$this->upload->data());
            $this->load->view('admin/upload_success', $data);
        }
    }


}

我的问题是当我尝试上传显示我的mp4视频时

  

string(9)&#34; video / mp4&#34;

消息。它不属于其他部分,视频不会上传。有人可以帮我做这个。 注意:我已在php.ini中设置了最大文件大小,请注意我已尝试将mime类型设置为$this->_file_mime_type($_FILES[$field]); var_dump($this->file_type); die();

被修改

我更改了上面的代码来上传图片,它给了我相同的结果。看起来使用我的代码无法上传任何内容。

2 个答案:

答案 0 :(得分:1)

我也遇到了同样的问题。但现在它对我来说很好。

有效地,您必须在PHP ini文件中更改两个参数

post_max_size = 100M
upload_max_filesize = 100M

但您可能还想更改apache滥用保护参数(100M)

LimitRequestBody 1073741824

另一方面,PHP每个脚本的时间限制也是30秒,所以你的脚本会在30秒的运行时死掉。

您可能还希望增加时间,以确保您的脚本不会因为上传,复制等而死亡,

set_time_limit(600);  // 10 minutos execution

Here

找到了这个答案

答案 1 :(得分:0)

mp4格式添加到allowed_types,如下:

$config['allowed_types'] = 'mov|mpeg|mp3|avi|mp4';

并在config/mimes.php中为mp4添加mime类型(如果不存在),如下所示:

'mp4' => array('video/mp4', 'application/octet-stream')