2012-06-25 139 views
2

我创建上传功能,但我希望它是一个更大的部分功能,如:笨 - 文件上传不看文件

public function addGame() { 
    // validation 
    $this->load->library('form_validation'); 
    $this->form_validation->set_rules('title', 'Tytuł gry', 'required'); 
    $this->form_validation->set_rules('dsc', 'Opis gry', 'required'); 

    $data['title'] = 'Dodaj grę'; 

    $this->load->model('contrib_model'); 
    $this->load->model('games_model'); 

    // image upload 
    $config['upload_path'] = './img/'; 

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

    if ($this->form_validation->run()) { 
     $data['submit'] = $this->contrib_model->addGame($this->input->post()); //submits data 
     if (! $this->upload->do_upload($this->input->post('cover'))) 
     { 
      $error = array('error' => $this->upload->display_errors()); 
      print_r($error); 
     } 
     else 
     { 
      $data = array('upload_data' => $this->upload->data()); 

      print_r($data); 
     } 
     $this->load->view('contribute/emptyPage', $data); //loads view 
    } else { 
     $data['genres'] = $this->games_model->Genres(); 
     $data['platforms'] = $this->games_model->Platforms(); 
     $data['developers'] = $this->games_model->Developers(); 

     $this->layout->view('contribute/addGame', $data); //loads view 
    } 
} 

我的形式:

<li><input type="text" name="title" id="title" placeholder="Tytuł gry" class="required"></li> 
<li><textarea name="dsc" id="dsc" cols="30" rows="10" placeholder="Opis gry" class="required"></textarea></li> 
<li><input type="text" name="dsc_src" id="dsc_src" placeholder="Źródło opisu" class="required"></li> 
<li><input class="required" type="text" name="reldate" id="reldate" placeholder="Data wydania (RRRR-MM-DD"></li> 
<li><input type="file" name="cover" id="cover" class="required"></li> 

我的问题是,它说没有指定的文件。我究竟做错了什么?

+0

什么是抛出该错误?你能够调试吗? – ametren

+0

唯一的错误是“您没有选择要上传的文件。”。我做了哪些。 –

+0

表单打开标签是这样的:'<?php echo form_open_multipart('yourcontroller/addGame');?>'? – ametren

回答

2

if声明实际上应的

if (! $this->upload->do_upload('cover')) 

代替

if (! $this->upload->do_upload($this->input->post('cover'))) 
+0

很好,谢谢! –

0

我有一个类似的问题在新的WAMP安装。原来,在我的php.ini文件中关闭了HTTP文件上传功能。所以确保它已开启。

file_uploads = On