<?php
/**********************************************
* *
* Upload Multiple Files *
* Author : Jasper van Gent *
* *
**********************************************/
//configuration settings
//you can change the upload directory to any existing directory
$upload_directory = $_SERVER['DOCUMENT_ROOT'];
//change the maximum number of uploads
$max_uploads = 20;
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
//create file fields to select the files you would like to upload
if ($_POST['files'])
{
printf('<form method="post" action="%s" enctype="multipart/form-data">', $_SERVER['PHP_SELF']);
//create list with the file fields
for ($i = 1; $i <= $_POST['files']; $i++)
{
printf('<input type="file" name="file_%s" size="100"><br />', $i);
}
printf('<input type="button" onclick="javascript: history.back(-1);" value="Cancel">');
printf('<input type="submit" value="Upload files">');
printf('<input type="hidden" name="history_files" value="%s">', $_POST['files']);
printf('</form>');
}
else
{
//upload all files and create report
printf('<h3>Result report:</h3>');
printf('Upload to: %s<br /><br />', $upload_directory);
printf('<table border="1">');
for ($i = 1; $i <= $_POST['history_files']; $i++)
{
$tmp_filename = $_FILES['file_'.$i]['tmp_name'];
$filename = $_FILES['file_'.$i]['name'];
if (move_uploaded_file($tmp_filename, $upload_directory.'/'.$filename))
{
$status = 'Done...';
}
else
{
$status = 'Failure!';
}
printf('<tr><td>%s</td><td>%s</td><td>%s</td></tr>', $i, ($filename)?$filename:' ', $status);
}
printf('</table>');
}
}
else
{
printf('<form method="post" action="%s">', $_SERVER['PHP_SELF']);
printf('Number of files to upload: ');
printf('<select name="files">');
//create list with numbers
for ($i = 1; $i <= $max_uploads; $i++)
{
printf('<option value="%1$s">%1$s', $i);
}
printf('</select> ');
printf('<input type="submit" value="Create fields">');
printf('</form>');
}
?>