2012-09-29 62 views
0

我幾乎完全按照CI文檔所做的那樣,做了一些小修改以適應我的需要,但總體上沒有什麼意義。我正在嘗試上傳的文件夾已存在,並已設置爲777的權限。PHP Codeigniter無錯地上傳失敗,沒有錯誤日誌,沒有錯誤,沒有任何東西

控制器:

if($this->input->post('uploads')) 
    { 
     $config['upload_path'] = realpath(APPPATH.'../images'); 
     $config['allowed_types'] = 'gif|jpg|png'; 
     $config['max_size'] = 0; 
     $config['max_width'] = 0; 
     $config['max_height'] = 0; 
     $config['remove_spaces'] = true; 

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

     if (!$this->upload->do_upload()) 
     { 
      $data['errors'] = $this->upload->display_errors(); 
     } 
     else 
     { 
      $data['upload_data'] = $this->upload->data(); 
     } 
    } 

的觀點:

<?php 
if(isset($errors)) 
{ 
    $this->genfunc->debugArray($errors); 
} 
if(isset($upload_data)) 
{ 
    $this->genfunc->debugArray($upload_data, 'php'); 
} 
?> 

<div id="gallery"> 
    <?php if (isset($images) && count($images)): 
     foreach($images as $image): ?> 
     <div class="thumb"> 
      <a href="<?php echo $image['url']; ?>"> 
       <img src="<?php echo $image['thumb_url']; ?>" /> 
      </a>     
     </div> 
    <?php endforeach; else: ?> 
     <div id="blank_gallery">Please Upload an Image</div> 
    <?php endif; ?> 
</div> 

<div id="upload"> 
    <?php 
    echo form_open_multipart('upload'); 
    echo form_upload('userfile'); 
    echo form_submit('uploads', 'Upload'); 
    echo form_close(); 
    ?>  
</div> 

視圖被加載爲好,目前一切都被髮送回相同的頁面,預​​計。但是從文檔中的CI示例中拿走,並且瀏覽了所有我認爲沒有理由的原因。希望有人能夠闡明它,也許我錯過了什麼?

+0

控制器的名稱和相應的功能是什麼? –

+0

控制器名稱是上傳 – chris

+0

它在你的'index()'函數中? –

回答

0

顯然在這一切futzin周圍。我改變了

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

$ this-> load-> library('upload'); $ this-> upload-> initialize($ upload_config);

當我在它時,我將$config更改爲$upload_config,並解決了這個問題。不知道在使用$config時是衝突還是第二個參數傳遞時加載機制中存在缺陷。無論哪種方式。上傳現在可以使用。

0

將首先嚐試:

  1. 與777個權限
  2. 更新$配置[ 'upload_path'] = './uploads/' 創建一個上傳目錄了你的根站點目錄的;
+0

所以你說一個目錄上面的public_html文件夾? – chris

+0

建議在與列出初始許可(用於測試)的ci應用程序和系統文件夾相同的目錄級別創建上傳目錄。 –

+0

以及它目前不在應用程序文件夾中我的圖像或上傳與應用程序和系統處於同一級別我將我的資產保存爲js CSS等。要升級一級將會進入我的服務器用戶文件夾,然後是一個從這將是根/ home/mine/public_html/uploads – chris

0

確保您在配置文件中啓用調試標誌。面臨同樣的問題,並得到解決。在發生錯誤時應該創建錯誤日誌的目錄。

+0

在這臺機器上,我已設置爲顯示錯誤,調試等。我的error_log沒有顯示任何東西。我的屏幕也不是,那是因爲沒有更好的文字而失敗。我從那以後就得到了它,並不是100%確定問題是什麼,而是改變了文獻庫加載的方式,配置讀取和我在自己的答案中做出的小修改。解決了這個問題,現在我有一個新的有趣的問題。參與重命名該文件,使用文件名 – chris

+0

重命名該文件?哪個文件和哪裏?我會建議如果找到這個問題的解決方案,那麼在這裏回答你自己的問題來幫助別人。爲新的詢問打開新的問題。 –

+0

我已經回答了我自己的問題,只是不能再選擇2天。 – chris