Foros del Web » Programando para Internet » PHP »

cambiar de nombre un archivo al subir al servidor

Estas en el tema de cambiar de nombre un archivo al subir al servidor en el foro de PHP en Foros del Web. Que tal amigos del foro ... como estan??? tengo un problema con un codigo espero me puedan ayudar: quiereo cambiar de nombre un archivo al ...
  #1 (permalink)  
Antiguo 05/08/2010, 17:25
 
Fecha de Ingreso: marzo-2009
Mensajes: 63
Antigüedad: 15 años, 1 mes
Puntos: 0
cambiar de nombre un archivo al subir al servidor

Que tal amigos del foro ... como estan???
tengo un problema con un codigo espero me puedan ayudar:

quiereo cambiar de nombre un archivo al subir al servidor; intento cambirle el nombre una ves arriba y depues insertar el nuevo name a la base de datos, pero no me daja ... les póngo ca el código... gracias
http://static.forosdelweb.com/images...edosarriba.png


<?php
include "conect.php";
$tabla=$_POST["tabla"];
$concepto=$_POST['concepto'];
$nom_cte=$_POST["nom_cte"];
$name=utf8_decode($_FILES["archivo"]["name"]);
$tipo=$_FILES["archivo"]["type"];
//echo $tipo;
switch ($tipo)
{
case 'application/pdf':
$ext=".pdf";
break;
case 'application/msword':
$ext=".doc";
break;
case 'application/vnd.openxmlformats-officedocument.wordprocessingml.document':
$ext=".docx";
break;
case 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet':
$ext=".xlsx";

case 'application/vnd.ms-excel':
$ext=".xls";
break;
}
$dir="sidef/clientes/";
$name=utf8_decode($_FILES["archivo"]["name"]);

copy($temp,"clientes/$nom_cte/$name");
$new_name=rename($dir.$nom_cte."/".$name,$dir.$nom_cte."/documento".$ext);
echo $name_rename;
$sql="update $tabla set ruta='$new_name'";
// $sql="update $tabla set ruta='$name_rename' where id_cliente='$cliente' && concepto='$concepto'";
// $result=mysql_query($sql,$conexion);
echo $sql;
?>
  #2 (permalink)  
Antiguo 05/08/2010, 17:47
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: cambiar de nombre un archivo al subir al servidor

algunos detalles.

case 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet':
$ext=".xlsx";
break; //faltaba el break

también

//esta linea la estas repitiendo
$name=utf8_decode($_FILES["archivo"]["name"]);
//al momento de hacer el copy puedes asignarle el nombre
copy($temp,"clientes/$nom_cte/$name");
//ya no es necesario el rename, también es otra la ruta
$new_name=rename($dir.$nom_cte."/".$name,$dir.$nom_cte."/documento".$ext);
echo $name_rename;//no sea $new_name

espero y te de una idea, saludos
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #3 (permalink)  
Antiguo 06/08/2010, 09:42
 
Fecha de Ingreso: marzo-2009
Mensajes: 63
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: cambiar de nombre un archivo al subir al servidor

ok ya corregí los errores... gracias
ahora el nombre del archivo lo necesto guardar en la base de datos
lo que intento hacer es: subir el archivo con un nuevo nombre y ese nuevo nombre guardarlo en la base de datos..
como le aplico el nuevo nombre desde la función copy??
  #4 (permalink)  
Antiguo 06/08/2010, 11:26
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: cambiar de nombre un archivo al subir al servidor

tu asignaras el nombre o lo tomaras de alguna variable?.

también checa la función copy

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #5 (permalink)  
Antiguo 06/08/2010, 11:31
 
Fecha de Ingreso: marzo-2009
Mensajes: 63
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: cambiar de nombre un archivo al subir al servidor

retome el código ... y ya me quedo ...gracias ...por la ayuda

$dir="sidef/clientes/";
copy($temp,"clientes/$nom_cte/$concepto".$ext);
$new_name=$concepto.$ext;
$sql="update $tabla set ruta='$new_name' where id_cliente='$cliente' && concepto='$concepto'";
$result=mysql_query($sql,$conexion);

Etiquetas: nombre, subir, servidores
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 12:09.