尝试上传文件时遇到问题
目前我正在开发amazon ec2服务器:
$path ='../../../../assets/Data/';
$config['upload_path'] = $path;
$config['allowed_types'] = '*';
$config['overwrite'] = true;
if ( ! $this->upload->do_upload())
{
echo $this->upload->display_errors();
$error = array('error' => $this->upload->display_errors());
}
else{ // I want to perform some action}
当我尝试执行此操作时。我收到一条错误消息 “上传路径似乎无效”。我的服务器上存在的CodeIgniter文件夹中存在该路径的位置
答案 0 :(得分:0)
根据Codeigniter User Guide的建议,'../../../../assets/Data/'
目录的文件权限是否设置为 777 ?
此外,配置是在配置文件中设置还是加载了库$this-load->library('upload', $config);
最后,为了确保路径正确,您可以在与代码相同的文件中检查var_dump(realpath('../../../../assets/Data/'));
的值吗?
答案 1 :(得分:0)
这里是路径的例子。我在应用程序名称文件中有文件夹,在文件中我有文件夹名称contract-csv。这就是我的道路。
$config['upload_path'] = './files/contracts-csv/'; //Example path
此外,您还缺少加载库的代码。
$this->load->library('upload', $config);//its very need to work the code
此代码用于上传
$this->upload->data();//
...希望我帮助你
答案 2 :(得分:0)
当调用$this->load->library('upload', $config);
时,通常会出现问题,可能是它没有加载配置设置,因此请在加载上传库后添加以下语句。
$this->upload->initialize($config);
答案 3 :(得分:0)
文件Uplaod函数采用文件系统路径.. SO ../../../../assets/Data/不是uplaod文件到文件系统的有效路径..你可以使用 $ path = $ _SERVER ['DOCUMENT_ROOT']。'/您的上传文件夹路径来自您的项目根目录';
试试这个......