Codeigniter图片上传不能抓取文件名


codeigniter image upload cant grab file name

我已经尝试和尝试,我只是不能得到我的图像上传。当我尝试回显图像名称时,我无法获取图像名称:s

你能看出我做错了什么吗?

这是我的控制器:

<?php 
//ADMIN PAGE
if (! defined('BASEPATH')) exit('No direct script access');
class News extends CI_Controller {

    //Write post when logged in as admin
    function write()
    {
        //insert image
        $config['upload_path'] = APPPATH .'/archive/img/news/';
        $config['allowed_types'] = 'gif|jpg|jpeg|png';
        $config['max_size']         = '9000';
        $config['encrypt_name']     = true;
        $this->load->library('upload', $config);
        $this->upload->do_upload('newsImage');
        $file_data = $this->upload->data();
        $newsData = array(
            'headline'      => $this->input->post('headline'),
            'description'   => $this->input->post('description'),
            'content'       => $this->input->post('content'),
            'creater'       => $this->session->userdata('username'),
            'ip'            => $this->session->userdata('ip'),
            'imgPath'       => $file_data['file_name']
        );

        echo "<pre>";
        //print_r( $this->upload->data());
        //print_r($file_data);
        //print_r($_FILES);
        //print_r($this->input->post());
        print_r($newsData);
        echo "</pre>";

        $this->load->model('admin/news_model');
        $this->news_model->insertNews($newsData);

        $data['main_content'] = 'admin/write_view';
        $this->load->view('template', $data);
    }
}

和我上传图像的视图文件

<div id="inputStyle">

<?php
echo form_open_multipart('admin/news/write');
echo form_input('headline', 'overskrift');
echo form_upload('newsImage');
echo form_textarea('description', 'indhold');
echo form_textarea('content', 'content');
echo form_submit('create', 'Opret nyhed');
echo form_close();

?>


</div><!-- inputStyle -->

我已经编辑了你的代码。这对你来说可能是工作。如果你的文件夹是在应用程序的根文件夹,那么不需要使用APPPATH。我也在你的代码中编辑了这个。试试这个。

//Write post when logged in as admin
function write()
{
    //insert image
    $config['upload_path'] = 'archive/img/news/';
    $config['allowed_types'] = 'gif|jpg|jpeg|png';
    $config['max_size']         = '9000';
    $config['encrypt_name']     = true;
    $this->load->library('upload', $config);
    $this->upload->do_upload('newsImage');
    $file_data = $this->upload->data();
    $newsData = array(
        'headline'      => $this->input->post('headline'),
        'description'   => $this->input->post('description'),
        'content'       => $this->input->post('content'),
        'creater'       => $this->session->userdata('username'),
        'ip'            => $this->session->userdata('ip'),
        'imgPath'       => $_FILES['newsImage']['name']
    );

    echo "<pre>";
    //print_r( $this->upload->data());
    //print_r($file_data);
    //print_r($_FILES);
    //print_r($this->input->post());
    print_r($newsData);
    echo "</pre>";

    $this->load->model('admin/news_model');
    $this->news_model->insertNews($newsData);

    $data['main_content'] = 'admin/write_view';
    $this->load->view('template', $data);
}