上下文:我正在学习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>
行动=&#34; ADM / createArticle&#34; : MVC美化网址
在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));
}
提交表单时
在目标网页(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 [&#34;文件&#34;]无法识别?
我检查了我的php.ini,所有参数都设置为上传。
一些想法:
- 我的MVC框架是什么原因?但它怎么会堵塞一个超全局变量呢?
- 我使用smoothstate.js,一个网站页面转换插件,甚至在管理部分。
它包含AJAX
- 我发布了我的HTACCESS代码,有没有办法扰乱$ _FILES?
真的感谢您的帮助!
答案 0 :(得分:0)
问题解决了: smoothstate.js使$ _files变空。