用户
 找回密码
 入住 CI 中国社区
搜索
查看: 4014|回复: 12
收起左侧

[版本 2.x] 上传视频的问题

[复制链接]
发表于 2014-9-15 20:46:31 | 显示全部楼层 |阅读模式
我写了一个上传视频的方法,但是视频上传不成功,不知道原因出现在了哪儿,请协助检查,谢谢。
PHP复制代码
 
//$id是本条文章的id号
 public function addmove($id){
     $uid = $this->session->userdata('id');
     $a=(int)($id/50);
     $up_file_path=FILEPATH.'movies/'.$a;
     if(is_dir($up_file_path)){
         $up_file_path=$up_file_path;
     }
     else {
         mkdir($up_file_path,0777);
     }
     $config['upload_path'] = $up_file_path;
        $config['allowed_types'] = 'mp4|avi';
        $config['max_size'] = '1000000';
        $this->load->library('upload', $config);
        $this->upload->do_upload("fileurl");
        if(!$this->upload->do_upload('fileurl'))
        {
            $error = array('error' => $this->upload->display_errors());
        }
        $data =  $this->upload->data();
        $strlen=strlen(FILEPATH);
        $movepath=substr($data['full_path'],$strlen);
        $data1 = array(
            'fileurl' => '/media/'.$movepath,
            'file_name' => $data['raw_name']
        );
        $this->db->where('id', $id);
        $this->db->update('content', $data1);
 }
 
 
复制代码

 楼主| 发表于 2014-9-19 14:37:29 | 显示全部楼层
这段程序可以在windows下面运行,但是linux提示:
这个是修改后的代码
PHP复制代码
 
$a=(int)($id/50);
            $up_file_path=FILEPATH."movies/".$chid."/".$a;
            //$this->MakeWriteDir($up_file_path);
            echo $up_file_path;
           
            //echo $up_file_path."<br>";
            if(is_dir($up_file_path)){
                $up_file_path=$up_file_path;
                chmod($up_file_path, 0777);
            }
            else {
                mkdir($up_file_path,0777);
            }
 
复制代码

提示:
/opt/lampp/htdocs/media/movies/1/0
其中 /opt/lampp/htdocs/media/movies/1/是存在的路径
0这个文件夹 是通过$a建立的。
A PHP Error was encountered

Severity: Warning

Message: chmod(): Operation not permitted

Filename: controllers/uploadfile.php

Line Number: 322
Array ( [error] =>
The upload destination folder does not appear to be writable.

The upload destination folder does not appear to be writable.
)
怎么回事了?windows下面运行是可以的。
发表于 2014-9-19 14:33:07 | 显示全部楼层
本帖最后由 Closer 于 2014-9-19 14:35 编辑

IF 判斷式內的 " $this->upload->do_upload("fileurl"); "
是用來確認是否有成功上傳,失敗就回傳FALSE


並執行下方程式,輸出錯誤訊息




樓主並沒有用到這個函數
所以是多餘了



发表于 2016-10-20 10:00:13 | 显示全部楼层
上帝也风流 发表于 2014-9-19 10:59
自己搞定,上传的文件类型是mp4,最后在config.php增加了mp4 的mime类型。
现在上传正常了。谢谢 Closer  ...

请问一下,mime类型怎么添加,最近我也在做视频上传的
 楼主| 发表于 2014-9-16 18:02:49 | 显示全部楼层
为何没有人回答呢?
没有表述清楚吗?
 楼主| 发表于 2014-9-18 23:28:33 | 显示全部楼层
为何没人呢?
版主哪儿去了?需要人气。
我已经修改php配置里文件上传大小了,为何视频上传不成功?我的文件只有20m大小的mp4啊。
救命啊。
发表于 2014-9-19 08:59:35 | 显示全部楼层
你的"$this->upload->display_errors()"出了甚麼樣的錯誤訊息?
 楼主| 发表于 2014-9-19 10:59:16 | 显示全部楼层
自己搞定,上传的文件类型是mp4,最后在config.php增加了mp4 的mime类型。
现在上传正常了。谢谢 Closer
发表于 2014-9-19 14:07:27 | 显示全部楼层
$this->upload->do_upload("fileurl");
怎么会有两行这样的代码
 楼主| 发表于 2014-9-19 14:42:27 | 显示全部楼层
去掉chmod 又提示

/opt/lampp/htdocs/media/movies/1/0
Array ( [error] =>
The upload destination folder does not appear to be writable.
)
发表于 2014-9-19 14:51:26 | 显示全部楼层
「你的資料夾不可寫」
開放資料夾權限777給他吧 (我不清楚Linux)

本版积分规则