Ho questo script per l'upload di immagini.

Codice PHP:
  for ($i=0;$i<count($_FILES['userfile']);$i++) {
  
    if (
$ok == null) {
      
$ok false;
    }
    
    if (
is_uploaded_file($_FILES['userfile']['tmp_name'][$i])) {
      if ( 
$_FILES'userfile' ][ 'error' ][$i] == ) {
        if (!
file_exists(IMAGES_DIR)) {
          
$oldumask umask(0);
          @
mkdir(IMAGES_DIR0777 );
          @
umask($oldumask);
        }
         
// Mod rob: aggiunte le parentesi quadre alla sostituzione con underscore 
         
        
$uploaddir IMAGES_DIR;
        
$char = array(' ',"]","[");
        
$uploadfile $uploaddir str_replace($char,"_",$_FILES['userfile']['name'][$i]);
        
        
// Mod rob: controllo presenza altro file con lo stesso nome
        
if (file_exists(IMAGES_DIR)) {
          echo(
'Esiste già un immagine con lo stesso nome.');
          exit;
        } 
Nelle ultime 3 righe faccio il controllo per la presenza di un file con lo stesso nome (i file finiscono tutti nella cartella 'images') ma dopo aver inserito il controllo me le blocca tutte !!

Cosa ho sbagliato ?