OK. now that it's condensed down, to upload multiple files in a standard non-HTML5 fashion, you have to provide multiple file inputs. There's two ways of going about it. Using PHP's array notation so each file input has the same name and gets converted into an array of file data once uploaded, or giving each file input a unique name:
array version:
<input type="file" name="filedata[]" />
<input type="file" name="filedata[]" />
<input type="file" name="filedata[]" />
unique name version:
<input type="file" name="filedata1" />
<input type="file" name="filedata2" />
<input type="file" name="filedata3" />
PHP will build the $_FILES array differently depending on which version you use. For the array side of things, you'll end up with
$_FILES['filedata'] = array(
'name' => array(
0 => 'name of first file',
1 => 'name of second file',
2 => 'name of third file',
),
'size' => array(0 => 'size of first file', 1 => 'size of second file', etc...
etc...
Note that each of the files gets its own entry UNDER the individual parameters. If you opt for the unique name version, you'll end up with:
$_FILES['filedata1'] = array('name' => ..., 'size' => ... );
$_FILES['filedata2'] = array('name' => ..., 'size' => ... );
etc...
where each file gets its own dedicated entry in $_FILES.
Regardless of which you go with, all the same file data is present, just arranged differently, which affects how you'd loop over it.