Ran*_*agg 8 php html5 file input
我正在尝试使用HTML5加载多个文件.这是我在某些网站上找到的代码.在PHP代码中,它不会将其识别为数组.
难道我做错了什么?有人能告诉我一个有效的解决方案吗
谢谢.
的index.html
<form action='save.php' method='post' enctype='multipart/form-data'>
<input name="uploads" type="file" multiple="multiple" />
<input type='submit' value="Upload File">
</form>
Run Code Online (Sandbox Code Playgroud)
save.php
function GetFiles() {
$files = array();
$fdata = $_FILES["uploads"];
if (is_array($fdata["name"])) {//This is the problem
for ($i = 0; $i < count($fdata['name']); ++$i) {
$files[] = array(
'name' => $fdata['name'][$i],
'tmp_name' => $fdata['tmp_name'][$i],
);
}
} else {
$files[] = $fdata;
}
foreach ($files as $file) {
// uploaded location of file is $file['tmp_name']
// original filename of file is $file['file']
}
}
Run Code Online (Sandbox Code Playgroud)
你需要制作一些名称数组:
<input name="uploads[]" type="file" multiple="multiple" />
Run Code Online (Sandbox Code Playgroud)
就像你以前使用复选框时一样.
作为数组的表单变量必须用a命名[],否则PHP不会将其视为数组.所以:
<form action='save.php' method='post' enctype='multipart/form-data'>
<input name="uploads[]" type="file" multiple="multiple" />
<input type='submit' value="Upload File">
</form>
Run Code Online (Sandbox Code Playgroud)
应该这样做.