我正在使用以下代码进行视频上传 .
<?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)“video / mp4”
信息 . 它不属于其他部分,视频不会上传 . 有人可以帮我做这个 . note: I have set the max file sizes in php.ini and note I have tried setting mime type as $this->_file_mime_type($_FILES[$field]); var_dump($this->file_type); die(); as well
Edited
我改变了上面的代码来上传图片,它给了我相同的结果 . 看起来使用我的代码无法上传任何内容 .
2 回答
我也遇到了同样的问题 . 但现在它对我来说很好 .
有效地,您必须在PHP ini文件中更改两个参数
但您可能还想更改apache滥用保护参数(100M)
而另一方面,PHP每个脚本的时间限制也是30秒,因此您的脚本将在30秒运行时死亡 .
您可能还希望增加时间以确保您的脚本不会因为上传,复制等而死亡,
从Here找到此答案
将
mp4
格式添加到allowed_types
,如下:如果不存在,则在
config/mimes.php
中为mp4添加mime类型,如下所示: