Php Codeigniter上载功能不工作

Php Codeigniter上载功能不工作,php,android,codeigniter,file-upload,image-uploading,Php,Android,Codeigniter,File Upload,Image Uploading,我正在研究codeigniter,在创建一个API的过程中,我遇到了这个问题。我试图将图像作为文件上传到服务器上,在网上搜索时,我熟悉了codeigniter中的inbuild upload类。请看一下这个代码。我用这个从Android发送文件 我想不出我在这里面临的问题。我收到一个文件,但它没有上传 我还尝试使用$this->upload->do_upload()而不是$this->upload->do_upload('upload_file')和$config['max_size']='10

我正在研究codeigniter,在创建一个API的过程中,我遇到了这个问题。我试图将图像作为文件上传到服务器上,在网上搜索时,我熟悉了codeigniter中的inbuild upload类。请看一下这个代码。我用这个从Android发送文件

我想不出我在这里面临的问题。我收到一个文件,但它没有上传

我还尝试使用
$this->upload->do_upload()
而不是
$this->upload->do_upload('upload_file')
$config['max_size']='10000'
而不是
$config['max_size']=10000。请帮忙。任何帮助都将不胜感激


此外,当此代码在web面板中运行时,工作正常。

如果您提供有关所观察到的错误或警告类型的更多详细信息,效果会更好。 原因可能有很多

1)
base\u url()
提供公共url。您必须指定上载文件夹的绝对或相对路径

2) (如果您使用的是Apache服务器)您的Apache用户没有对上载文件夹的写入权限

3) 文件夹路径不存在

如果第一个不起作用,请检查其余各点。希望这对你有帮助

问候 Muaaz

尝试使用FCPATH

$config['upload_path'] = FCPATH . '/uploads/';

然后

  • 在视图中检查表单输入
我的表单视图:

<input id="document" type="file" data-browse-label="browse" name="document" data-show-upload="false" data-show-preview="false" class="form-control file" />

你看到任何错误或警告了吗?我正在从Android上传文件,我无法添加输入标记。很抱歉,这可能有助于我访问此文件,但上传时有问题。不知道我需要在此->上传->上传()中传递哪个键 function@technicalbird这里有更详细的解释:如果我选择从AndroidI上传,这里的关键是什么?我没有收到任何错误。它一直给我成功
$config['upload_path'] = './uploads/';
<?php

class Example extends CI_Controller {

public function __construct() {
  parent::__construct();
  $this->load->helper('form');
}

// Name function what every you want remember to change it on view form.
public function upload() {

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

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

if ($this->upload->do_upload('uploaded_file')) {

   // Then the success stuff

   $upload_data = $this->upload->data();

   echo $upload_data['file_name'];

} else {
   // Errors
}

}

}
<?php echo form_open_multipart('example/upload');?>
<?php echo form_upload('uploaded_file', 'Upload');?>
<?php echo form_close();?>
<input id="document" type="file" data-browse-label="browse" name="document" data-show-upload="false" data-show-preview="false" class="form-control file" />
       if ($_FILES['document']['size'] > 0) {
            $this->load->library('upload');
            $config['upload_path'] = 'uploads/images';
            $config['allowed_types'] = '*';
            $config['max_size'] = $this->allowed_file_size;
            $config['overwrite'] = false;
            $config['encrypt_name'] = true;
            $this->upload->initialize($config);
            if (!$this->upload->do_upload('document')) {
                $error = $this->upload->display_errors();
                $this->session->set_flashdata('error', $error);
                redirect($_SERVER["HTTP_REFERER"]);
            }
            $photo = $this->upload->file_name;
        }