Salve a tutti ho un problemino. Ho creato un semplice script per fare l'upload e il download di file. In pratica l'utente tramite form può creare delle cartelle e poi inserirci i file che vuole. Il problema nasce (e nasce ora a progetto terminato ) quando l'utente crea una cartella con nomi di file non validi come ',?,:,/,\ etc. In questo caso naturalmente la cartella non viene creata e si ha un errore.

Ho creato, quindi, una funzione con un array contenenti tutti i caratteri non validi e ho provato ad usare la funzione ereg ma anche essa mi resistuisce un errore. Ecco il codice:

$invalidchars = array ("\","/","?");

$name = stripslashes($name);

$check = 0;
while (list($key, $value) = each($invalidchars))
{
//$name = str_replace($value, '', $name);
if(eregi($value, $name))
{
$check++;
}
}
if($check != 0)
{
echo "Nome cartella non ammissibile";
}
else
{
return $name;
}

Cosa sbaglio?? Oltre a restituire errori come Warning: eregi(): REG_EESCAPE o Warning: eregi(): REG_BADRPT la funzione restituisce sempre "nome cartella non ammissibile" anche se nella stringa non vi sono caratteri nell'array.

Mi date una mano?? Grazie