Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/03/2013, 10:38
volaveruntmissit
 
Fecha de Ingreso: octubre-2012
Mensajes: 45
Antigüedad: 11 años, 5 meses
Puntos: 0
Pregunta Problema con puntos al subir un archivo via web

.
Que tal! Pues agradecería su ayuda, seguro es algo simple pero no he encontrado la solucion.

Tengo una web para subir archivos menores a 5MB, pero tengo un problema con los puntos intermedios.

Uso ésto para reemplazar caractéres no válidos en los nombres originales:


Código PHP:
$str explode ('.'$_FILES['archivo']['name']);
$sea=array(' ','ñ','Ñ','Á','á','É','é','Í','í','Ó','ó','Ú','ú');
$rep=array('-','n','N','A','a','E','e','I','i','O','o','U','u');
$str=str_replace($sea,$rep,$str);

$nuevonombre $str
.
Para despues extraer la extensión del archivo y mostrar que formato es:

Código PHP:
$tipo=$_FILES['archivo']['type'];

switch (
$tipo) {
 case 
'text/plain':
 
$ext='txt';
 break;
 case 
'application/zip':
 
$ext='zip';
 break;
 case 
'application/x-rar-compressed':
 
$ext='rar';
 break;
 case 
'application/octet-stream':
 
$extension_typeexplode ('.'$_FILES['archivo']['name']);
 
$extend($extension_type);
 break;
 default:
 
$ext'error';
 break;
 }
 
$solonombre=$nuevonombre[0]; 

Y el resultado:

Código PHP:
echo 'Nombre de archivo: '.$solonombre.'<br/>
Extensión: '
.$ext
.
Pero el problema es cuando archivos vienen con puntos intermedios como por ejemplo un: archivo.nuevo.txt

El resultado al subir el archivo es: archivo.txt

De que manera puedo mantener ese punto intermedio para que el resultado me dé la extensión txt pero con el nombre de achivo: archivo.nuevo?

Ya intenté condicionar el punto con el $sea como muestro arriba en el explode del nombre original pero sigue sin funcionar.

Gracias por su ayuda!

.