CodeIgniter Uploadify不上传文件

问题描述:

我没有收到任何错误,没有任何内容,但图像没有被上传,就像控制器根本没有被调用,当我添加了contruct函数log_message我没有看到任何东西日志文件,不知道有什么问题。顺便说一句,我使用这个库(http://jeromejaglale.com/doc/php/codeigniter_i18n)来管理的语言,所以我必须在URL http://getit.mysite/enCodeIgniter Uploadify不上传文件

这里是我的控制器功能

<?php 

if (!defined('BASEPATH')) 
    exit('No direct script access allowed'); 

class FileUpload extends CI_Controller { 

    public $view_data = array(); 
    private $upload_config; 

    function __construct() { 
     parent::__construct(); 
    } 

    public function do_upload() { 
     $this->load->library('upload'); 

     $image_upload_folder = base_url() . 'uploads/'; 

     if (!file_exists($image_upload_folder)) { 
      mkdir($image_upload_folder, DIR_WRITE_MODE, true); 
     } 

     $this->upload_config = array(
      'upload_path' => $image_upload_folder, 
      'allowed_types' => 'png|jpg|jpeg|bmp|tiff', 
      'max_size' => 2048, 
      'remove_space' => TRUE, 
      'encrypt_name' => TRUE, 
     ); 

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

     if (!$this->upload->do_upload()) { 
      $upload_error = $this->upload->display_errors(); 
      echo json_encode($upload_error); 
     } else { 
      $file_info = $this->upload->data(); 
      echo json_encode($file_info); 
     } 
    } 

} 

?> 

和js

jQuery(document).ready(function($) { 

    var base_url = 'http://getit.mycom/'; 

    $('#upload-file').click(function(e) { 
     e.preventDefault(); 
     $('#userfile').uploadify('upload', '*'); 
    }); 

    $('#userfile').uploadify({ 
     'auto': false, 
     'swf': base_url + 'js/uploadify/uploadify.swf', 
     'cancelImg': base_url + 'js/uploadify/uploadify-cancel.png', 
     'uploader': base_url + 'fileupload/do_upload', 
     'fileTypeExts': '*.jpg;*.bmp;*.png;*.tif', 
     'fileTypeDesc': 'Image Files (.jpg,.bmp,.png,.tif)', 
     'fileSizeLimit': '8MB', 
     'fileObjName': 'userfile', 
     'buttonText': 'Select Photo(s)', 
     'multi': true, 
     'removeCompleted': false 
    }); 
}); 

和查看文件(添加用户):

<?php echo form_open_multipart(); ?> 
            <ul class="unstyled"> 
             <li> 
              <?php echo form_upload('userfile', '', 'id="userfile"'); ?> 
              <?php echo (isset($error)) ? $error : ''; ?> 
             </li> 
             <li> 
              <?php echo form_button(array('content' => 'Upload', 'id' => 'upload-file', 'class' => 'btn btn-large btn-primary')); ?> 
             </li> 
            </ul> 
            <?php echo form_close(); ?> 
+0

检查您的Javascript控制台是否有错误。我敢打赌,你正在从控制器获得404。 – 2013-04-09 21:00:36

+0

@Cryode我仔细检查过,在我提交问题之前,我没有在控制台中找到任何东西,网络显示我302,这是发现,但在响应中,我什么也没有得到。 – user147 2013-04-09 21:04:32

+0

您在代码中定义了两次'uploadify()' - 是因为这个原因吗? Uploadify的网站已关闭,我从未使用过它,所以帮助会很困难。 – 2013-04-09 21:28:30

在控制器代码中,更改if (!$this->upload->do_upload())if (!$this->upload->do_upload('Filedata'))。你试一试。