Codeigniter设置上传路径超出安装文件夹

时间:2012-10-01 05:21:48

标签: php codeigniter upload

每当我回复

时,我都无法上传文件
$this->upload->display_errors();

这会导致错误The upload path does not appear to be valid.

我的目录结构

- main
   - CI_Installation
   - uploads
     - brochures

我正在做的测试是在我的本地机器上。在生产服务器中,两个内部文件夹将位于根文件夹而不是main文件夹中。

我想将文件上传到uploads文件夹,即CI安装文件夹之外。我试过设置路径 ./uploads/brochures/ ../../uploads/brochures/以及其他所有可能的路径,但仍然会出现错误。

修改

我知道路径中有错误,文件夹权限会产生另一个错误。该错误明确指出The upload path does not appear to be valid.

下面是代码片段,发布整个控制器是不可行的,因为它有几行代码,可能难以阅读。

                    $config['upload_path'] = './uploads/brochures/';
                $config['allowed_types'] = 'gif|jpg|png|pdf|docx|doc';
                $config['max_size'] = '10000';
                $config["remove_spaces"]=TRUE;
                $config['encrypt_name']  = TRUE;
                $this->load->library('upload',$config);
                $this->upload->initialize($config);
                $uploaded = $this->upload->do_upload("b_path");
                $data = array('upload_data' => $this->upload->data());

                echo "ERRORS = ".$this->upload->display_errors();

有人可以帮助我吗?

由于

3 个答案:

答案 0 :(得分:2)

如果您在本地主机上,那么您应该将上传路径更改为此

c:\wamp\www\ci_installation\upload\

在服务器上,如果你设置了路径就可以了。 如果您使用了其他东西,如果已经为您提供了wamp安装的路径,那么请根据您的安装目录提供路径。

答案 1 :(得分:1)

我自己解决了这个问题。我在UPLOAD_PATH

中设置常量constants.php
define('UPLOAD_PATH',dirname(dirname(dirname(dirname(__FILE__)))).DIRECTORY_SEPARATOR.'uploads/');

答案 2 :(得分:0)

您可以使用FCPATH常数,然后使用'../'转到一个目录,直至到达所需的文件夹。