Così alla fine del ciclo ti restituisce correttamente i due nomi diversi. Ovviamente se carichi solo un file, $nomefile1 non sarà valorizzata.
Quindi prima di fare l'inserimento ti conviene vedere se il campo file[0] del form è stato compilato, e ti valorizzi la variabile. Stessa cosa naturalmente per il secondo file
Codice PHP:
<form action="" method="post" enctype="multipart/form-data">
file:
<input type="file" name="file[]" />
<input type="file" name="file[]" />
<input type="submit" name="send" value="Send" />
</p>
</form>
<?php
if (isset($_POST["send"])) {
$i = 0;
foreach ($_FILES["file"]["error"] as $key => $error) {
if ($error == UPLOAD_ERR_OK) {
$tmp_name = $_FILES["file"]["tmp_name"][$key];
$name = $_FILES["file"]["name"][$key];
// controllo se il file esiste
if (file_exists('../files/'.$_FILES["file"]["name"][$key])) {
echo $_FILES["file"]["name"][$key]."
File già esistente sul server. Rinominarlo e riprovare.</p>";
break;
}
$valore = array($_FILES["file"]["name"][$key]);
$nomefile[$i] = $valore[0];
// echo 'img= '.$nomefile[$i];
// move_uploaded_file($tmp_name, "../files/$name");
$i++;
}
}
echo "nome file 1: " . $nomefile[0] . "
nome file 2: " . $nomefile[1];
}
?>