"; echo ""; echo "Uploader facility"; echo ""; echo ""; umask (0); if ($REQUEST_METHOD == "GET") { echo "

Error: GET access not permitted

"; echo "You cannot access this script using the GET method. Use POST instead."; echo ""; echo ""; exit (); } $logfile = fopen ("data/index.txt", "a"); $datime = date ("D jS F Y H:i:s"); echo ("
ParameterValue\n"); foreach ($HTTP_POST_VARS as $key => $value) { echo "
$key$value\n"; } echo ("
\n"); $identity = $HTTP_POST_VARS['identity']; if (! $identity) { echo "

No identity declared!

"; echo "You must supply an identity!"; echo ""; echo ""; exit (); } echo ("

$identity

\n"); $pin = $HTTP_POST_VARS['pin']; fputs ($logfile, "\n$datime access from $identity with pin $pin\n"); echo ("Access at $datime
"); // if (crypt($pin, "butter") !== "xxY3iYSjRveOE") { // echo "

Incorrect PIN supplied

"; // echo ""; // echo ""; // exit (); // } echo ("

PIN pin ($pin) correct

\n"); // root directory for storing a submission $folder = $HTTP_POST_VARS['folder']; $root = "data/$folder/$identity"; foreach ($HTTP_POST_FILES as $files) { if (is_array($files['name'])) { foreach ($files['name'] as $index => $name) { loadfile ($root, $name, $files['tmp_name'][$index], $logfile); } } else { loadfile ($root, $files['name'], $files['tmp_name'], $logfile); } } echo ("
Have a nice day!
"); echo ""; echo ""; fclose ($logfile); function loadfile ($rootdir, $filename, $tempname, $logfile) { echo("$filename - "); if (preg_match ("/~;<>*|`&$!#\[\]\{\}:\"/", $filename)) { echo("Filename contains invalid characters.
\n"); } elseif ($filename == "") { echo("No file!
\n"); } else { $path = "$rootdir/$filename"; $dirname = dirname($path); if (!is_dir ($dirname)) { createdirs ($dirname); } if (move_uploaded_file($tempname, $path)) { fputs ($logfile, " OK: $filename\n"); echo ("Has been submitted.
\n"); } else { fputs ($logfile, " ERROR: $filename\n"); echo ("Has NOT been submitted due to an error.
\n"); } } } function createdirs ($dirname) { $split = strtok ($dirname, '/'); while ($split) { if ($build) { $build = "$build/$split"; } else { $build = "$split"; } if (!file_exists ($build)) { mkdir ($build, 0777); } $split = strtok ('/'); } } ?>