Ciao a tutti.
Sto implementando una pagina php con upload di file multipli in cui la destinazione del file viene impostata selezionando gli elementi di una dropdown list.
L' upload viene fatto trascinando l' immagine in un'area apposita e non necessita di bottone submit.

Es.
directory ../images/one/ se viene selezionato l' elemento one della select
../images/two/ se viene selezionato l' elemento two della select

Implementazione:

<form method="post" action="upload.php">
<div class="styled-select">
<select id="page" name="select-page[]" required>
<option value="">Select Page</option>
<option value="intro">Intro Page</option>
<option value="story">Story Page</option>
<option value="sbout">About Page</option>
<option value="wedding">Wedding Page</option>
<option value="project">OtherProj Page</option>
<option value="video">Video Page</option>
</select>
</div>
</form>

<?php
$upload_dir = '../images/';

if (!empty($_POST['select-page'])) {
$page = $_POST['select-page'];
switch ($page) {

case "intro":
$upload_dir .= "intro/";
break;

case "story":
$upload_dir .= "story/";
break;

}
}

$allowed_ext = array('jpg','jpeg','png','gif');


if(strtolower($_SERVER['REQUEST_METHOD']) != 'post'){
exit_status('Error! Wrong HTTP method!');
}


if(array_key_exists('pic',$_FILES) && $_FILES['pic']['error'] == 0 ){

$pic = $_FILES['pic'];

if(!in_array(get_extension($pic['name']),$allowed_ext)){
exit_status('Only '.implode(',',$allowed_ext).' files are allowed!');
}

if($demo_mode){

// File uploads are ignored. We only log them.

$line = implode(' ', array( date('r'), $_SERVER['REMOTE_ADDR'], $pic['size'], $pic['name']));
file_put_contents('log.txt', $line.PHP_EOL, FILE_APPEND);

exit_status('Uploads are ignored in demo mode.');
}


// Move the uploaded file from the temporary
// directory to the uploads folder:

if(move_uploaded_file($pic['tmp_name'], $upload_dir.$pic['name'])){
exit_status('File was uploaded successfuly!');
}

}

exit_status('Something went wrong with your upload!');


// Helper functions

function exit_status($str){
echo json_encode(array('status'=>$str));
exit;
}

function get_extension($file_name){
$ext = explode('.', $file_name);
$ext = array_pop($ext);
return strtolower($ext);
}
?>

Il risultato è che non si tiene contro dell' elemento selezionato nella dropdown list e i file vengono uploadati nella folder di origine $upload_dir = '../images/', ignorando lo switch case.
Dove sbaglio?
Grazie a tutti