2013-03-27 63 views
1

我用的是确切的代码从CI上传路径似乎并没有有效

http://ellislab.com/codeigniter/user-guide/libraries/file_uploading.html

但它总是不断给我

上传路径不出现同样的错误有效。

该文件夹在那里,路径是好的。文件夹具有写入权限。

控制器代码是这样

<?php 

    class Upload extends CI_Controller { 

function __construct() 
{ 
    parent::__construct(); 
    $this->load->helper(array('form', 'url')); 

} 

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

function do_upload() 
{ 

    $config['upload_path'] = '/uploads/'; 
    $config['allowed_types'] = 'gif|jpg|png'; 
    $config['max_size'] = '100'; 
    $config['max_width'] = '1024'; 
    $config['max_height'] = '768'; 
    print_r($config); 

    $this->load->library('upload', $config); 
    $this->upload->initialize($config); 

    if (! $this->upload->do_upload()) 
    { 
     $error = array('error' => $this->upload->display_errors()); 
     //echo 'path : '.$config['upload_path']; 

     $this->load->view('upload_form', $error); 
    } 
    else 
    { 
     $data = array('upload_data' => $this->upload->data()); 

     $this->load->view('upload_success', $data); 
    } 
    //echo "submited"; 
} 
}?> 
+0

再次检查链接$ config ['upload_path'] ='./uploads/'; – 2013-03-27 09:55:41

+0

对不起,这是一个错字错误。这是你提到的$ config ['upload_path'] ='./uploads/';但给出相同的错误 – Uahmed 2013-03-27 10:10:57

回答

0

只需创建一个文件夹中的应用程序文件夹的目录名'uploads'。并改变你在你的控制器上传路径编码线如下。

$config['upload_path'] = './uploads/'; 
+0

感谢您的答复。之前我在控制器文件夹中创建文件夹时,我在应用程序目录中创建了文件夹,但它仍然给我提供了同样的错 – Uahmed 2013-03-27 10:11:56

1

我弄明白了这个问题。我正在控制器文件夹中创建文件夹。上传文件夹应该在安装了Codeignator的根文件夹中创建。 在我的情况CI被安装在这条道路

本地主机/ CI/

所以我上传的名称创建的文件夹,它为我工作。

0

你的问题是在下面一行。

$this->load->library('upload', $config); 
$this->upload->initialize($config); 

取而代之的是刚刚做

$this->upload->initialize($config); 

和负载上传库从自动加载。