Foros del Web » Programando para Internet » PHP »

Subida de archivos, renombrar...

Estas en el tema de Subida de archivos, renombrar... en el foro de PHP en Foros del Web. Hola, estoy programando una web, en una seccion de manuales, tengo que subir un documento doc , pdf, o lo que sea para el manual ...
  #1 (permalink)  
Antiguo 04/10/2007, 03:19
.:Chimera:.
Invitado
 
Mensajes: n/a
Puntos:
Subida de archivos, renombrar...

Hola, estoy programando una web, en una seccion de manuales, tengo que subir un documento doc , pdf, o lo que sea para el manual en cuestion, pero quiero que se renombre para quitar acentos, eñes, etc.....


El formulario envia bien los parametros, lo he comprobado imprimiendo los $_POST pero al procesarlo me da errores, aquí el codigo:

Código PHP:
function nuevo_manual(){
   
$donde=$_SERVER['HTTP_REFERER'];
   
$titulo=$_POST['titulo'];
   
$web_origen=$_POST['web_origen'];
   
$descripcion=$_POST['textarea']; 
   
$target_path1 "../archivos/manuales/";
   
$archivo=$_FILES['url']['tmp_name'];
   
$archivo=str_replace (" ""_"$archivo);   
   
$archivo=QuitaAcentos($archivo);
   
$_FILES['url']['tmp_name']=$archivo;
   
$target_path $target_path1 basename($_FILES['url']['tmp_name']);

   
$coook=$_COOKIE['usuario_****'];
   if (
$coook==''){exit;}
   
move_uploaded_file($_FILES['url']['tmp_name'], $target_path);  
   if (
is_file($target_path)) {
   
mysql_query("insert into manuales (Fecha,Titulo,Url,Autor,Vistas,Descripcion,Web_origen) values (NOW(),'$titulo','$target_path',1,0,'$descripcion','$web_origen')",conectar());
   
header("Location: $donde");
     }
   else{
header("Location: $donde&mensaje=<font color=\"red\">No se ha subido el archivo  !</font>");}



A ver si alguien me puede ayudar, los errores que me da son estos:
Código:
Warning: move_uploaded_file(../archivos/manuales/php7TxGmc): failed to open stream: No such file or directory in /home/sanhuber/domains/*******/public_html/V2/misc.php on line 210

Warning: move_uploaded_file(): Unable to move '/tmp/php7TxGmc' to '../archivos/manuales/php7TxGmc' in /home/sanhuber/domains/********/public_html/V2/misc.php on line 210

Warning: Cannot modify header information - headers already sent by (output started at /home/sanhuber/domains/********/public_html/V2/misc.php:210) in /home/sanhuber/domains/*******/public_html/V2/misc.php on line 215
el archivo que he intentado subir se llamaba ejemplo ñ á é.pdf


Que demonios pasa? no soy capaz de renombrarlo en el proceso, y no se ha subido nada a la web.... ni a la BD
  #2 (permalink)  
Antiguo 04/10/2007, 06:34
Avatar de Kelpie  
Fecha de Ingreso: febrero-2002
Ubicación: NorthSpain
Mensajes: 609
Antigüedad: 22 años, 2 meses
Puntos: 8
Re: Subida de archivos, renombrar...

Supongo que el usuario web tendrá permisos de escritura en el directorio de destino, ¿no? El que te dé una advertencia es síntoma de que el archivo subido es correcto, pero no puede ser movido.

Por otra parte, no creo que el código haga lo que pretendes ya que el nombre final del archivo será el nombre del temporal filtrado , no el del archivo original.(en el ejemplo que nos pones se llamará php7TxGmc, así , sin extensión ni nada...)
__________________
Kelpie
  #3 (permalink)  
Antiguo 04/10/2007, 06:35
Avatar de Kelpie  
Fecha de Ingreso: febrero-2002
Ubicación: NorthSpain
Mensajes: 609
Antigüedad: 22 años, 2 meses
Puntos: 8
Re: Subida de archivos, renombrar...

P.D.
Revisa si el directorio de destino (../archivos/manuales/php7TxGmc) existe. Es una ruta relativa. Comprueba cuél es la base de esa ruta y si existen los directorios manuales y archivos...
__________________
Kelpie
  #4 (permalink)  
Antiguo 04/10/2007, 06:59
.:Chimera:.
Invitado
 
Mensajes: n/a
Puntos:
Re: Subida de archivos, renombrar...

No, no existe ningun archivo así, el directorio donde se supone que se almacenan sigue estando vacio después de muchos intentos....

El nombre ese tan raro no es el que queda mientras se renombra, el que queda es el mismo pero sin acentos ni espacios n ñ, porque lo imprimo en el proceso y es así. Alguien me puede dar una ayudita?

Gracias !


EDITO: Nada, ya lo he solucionado, el problema es que la ruta absoluta del archivo estaba mal, la he puesto relativa y todo arreglado. Un saludo.

Última edición por .:Chimera:.; 04/10/2007 a las 08:12
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:18.