2016-05-12 62 views
0

上下文:我正在學習MVC架構,我使用了自定義框架。
問題:我的形式發送成功$ _ POST,但是$ _FILES被發現爲未定義


鑑於

形式

<form action="adm/createArticle" method="post" enctype="multipart/form-data"> 
    //some inputs.. 
    <input name="files[]" id="files" type="file" multiple="multiple" /> 
</form> 

行動= 「ADM/createArticle」 : MVC美化網址
in htaccess:

RewriteEngine on 
RewriteRule ^([a-zA-Z]*)/?([a-zA-Z]*)?/?([a-zA-Z0-9]*)?/?$ index.php?controleur=$1&action=$2&id=$3 [NC,L] 

在控制器:

public function createArticle() { 
    $filesArray = $_FILES["files"]; 
    $this->generateView(array("filesArray" => $filesArray)); 
} 

當形式submited

在旨在頁(createArticle.php):

// Testing 
<?php var_dump($filesArray)?> // null 
<?php var_dump($_POST)?>  // status 200 OK 
<?php var_dump($_FILES)?>  // array (size=0) empty 

警告消息:

Notice: Undefined index: files in C:\wamp64\www\etc\Controller\ControllerAdm.php on line 54 

我不明白這個問題:爲什麼$ _ POST被確定,$ _FILES [ 「文件」]不承認?
我檢查了我的php.ini,所有參數都設置爲上傳。


一些想法:
- 是因爲我的MVC框架?但它怎麼會堵塞一個超全球變量?
- 我使用smoothstate.js,一個網站頁面轉換插件,甚至在管理部分。
它包含AJAX。
- 我發佈了我的HTACCESS代碼,是否有一種方法會干擾$ _FILES?

真的非常感謝您的幫助!

回答

0

問題解決: smoothstate.js使$ _files變空。