Foros del Web » Programando para Internet » PHP »

Nombrar archivos al ser subidos en php

Estas en el tema de Nombrar archivos al ser subidos en php en el foro de PHP en Foros del Web. Hola estimados amigos. Tengo una consulta a la hora de subir archivos en una carpeta del servidor. Tengo el siguiente procedimiento dentro de mis páginas ...
  #1 (permalink)  
Antiguo 24/10/2010, 17:47
 
Fecha de Ingreso: junio-2008
Ubicación: Buenos Aires.
Mensajes: 9
Antigüedad: 15 años, 10 meses
Puntos: 0
Nombrar archivos al ser subidos en php

Hola estimados amigos.
Tengo una consulta a la hora de subir archivos en una carpeta del servidor. Tengo el siguiente procedimiento dentro de mis páginas para subir los archivos.
El formulario que toma los datos es el siguiente:


Código PHP:
Ver original
  1. <head>
  2. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  3. <title>Documento sin título</title>
  4. </head>
  5.  
  6. <body>
  7.   <form action="upload.php?ID=<?php echo $row_Recordset1['ID'];?>" method="post" enctype="multipart/form-data">
  8.   <input name="archivo" type="file" size="35" />
  9.   <input name="enviar" type="submit" value="Upload File" />
  10.   <input name="action" type="hidden" value="upload" />    
  11.   </form>
  12. </body>
  13. </html>



El que recibe los datos es este.


Código PHP:
Ver original
  1. <?php $status = "";
  2.    if ($_POST["action"] == "upload") {
  3.    
  4.    // obtenemos los datos del archivo
  5.    $tamano = $_FILES["archivo"]['size'];
  6.    $tipo = $_FILES["archivo"]['type'];
  7.    $archivo = $_FILES["archivo"]['name'];
  8.    $prefijo = substr(md5(uniqid(rand())),0,6);
  9.    if ($archivo != "") {
  10.  
  11.   // guardamos el archivo a la carpeta files
  12.   $destino =  "files/".$prefijo."_".$archivo;
  13.   if (copy($_FILES['archivo']['tmp_name'],$destino)) {
  14.   $status = "Archivo subido: <b>".$archivo."</b>";
  15.   } else {
  16.   $status = "Error al subir el archivo";
  17.   }
  18.   } else {
  19.   $status = "Error al subir archivo";
  20.   }
  21.   }
  22.   ?>


Ahora bien. Como pueden ver el la página a la que se dirige (upload.php) tiene un parámetro de URL dado por unos registros de la base de datos.

Lo que quiero hacer es que el archivo que se sube tome el nombre de un registro de la base de datos.



Es decir que si y tengo una abse de datos así.

ID / NOMBRE
1/PEDRO
2/JUAN
3/ALBERTO

Quiero que cuando se estén viendo los datos de Juan y se quiera subir un archivo tome ese nombre.
Si estoy viendo la página de Juan y el parámetro (upload.php?ID=<?php echo $row_Recordset1['ID'];?>) me lleva a "upload.php?ID=2" quiero que se suba el archivo con el nombre "Juan.pdf o extensión que tenga" o el menos con el número de ID (2.pdf o cualquier extensión)

Es muy sencillo pero mis pocos conocimientos me impiden hacerlo fácil.

Desde ya muchas gracias.
  #2 (permalink)  
Antiguo 25/10/2010, 14:06
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Tema movido desde Configuración PHP a PHP
  #3 (permalink)  
Antiguo 25/10/2010, 14:37
Avatar de gusma62  
Fecha de Ingreso: julio-2008
Ubicación: Tepatitlán, Jalisco, Mexico
Mensajes: 167
Antigüedad: 15 años, 9 meses
Puntos: 6
Respuesta: Nombrar archivos al ser subidos en php

Has antes una consulta para tomar el nombre de la persona, luego:

Código PHP:
Ver original
  1. $destino =  "files/".$consulta["nombrePersona"]."_".$archivo;

Etiquetas: Ninguno
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 21:31.