Foros del Web » Programando para Internet » PHP »

Upload de fotos

Estas en el tema de Upload de fotos en el foro de PHP en Foros del Web. Quiero subir fotos, otorgandole nombres numericos aleatorios, y que esos nombres sean almacenados en mi BBDD. Tengo esta Upload: Form: Código PHP: < form method = ...
  #1 (permalink)  
Antiguo 28/06/2006, 21:13
Avatar de Netfrank  
Fecha de Ingreso: marzo-2006
Ubicación: Las Talitas - Tucumán
Mensajes: 226
Antigüedad: 11 años, 9 meses
Puntos: 3
Upload de fotos

Quiero subir fotos, otorgandole nombres numericos aleatorios, y que esos nombres sean almacenados en mi BBDD.

Tengo esta Upload:

Form:
Código PHP:
<form method="POST" enctype="multipart/form-data" action="upl2.php">
<
input type="file" name="archivo" size="20">
<
input type="submit" value="Enviar" name="send">
<
input type="reset" value="Borrar" name="erase">
</
form
Upload:
Código PHP:
$extensiones=array("html","exe","php");
$path="Ruta";
$nombre=$HTTP_POST_FILES['archivo']['name'];
$tamanio=$HTTP_POST_FILES['archivo']['size'];
$tipo=$HTTP_POST_FILES['archivo']['type'];
$var explode(".","$nombre");
$num count($extensiones);
$valor $num-1;
for(
$i=0$i<=$valor$i++) {
    if(
$extensiones[$i] == $var[1]) {
    echo 
"Tipo de Archivo no admitido";
    exit;
    }
}
if (
is_uploaded_file($HTTP_POST_FILES['archivo']['tmp_name']))
 {
  
copy($HTTP_POST_FILES['archivo']['tmp_name'], "$path/$nombre");
  echo 
"El archivo se ha subido correctamente al servidor, muchas gracias <p>";
  echo 
"Nombre: $nombre <p>";
  echo 
"Tamaño: $tamanio <p>";
  echo 
"Tipo: $tipo";
 }
else { echo 
"Error al subir el archivo"; } 
¿Qué debería agregarles para lograr lo que quiero?
  #2 (permalink)  
Antiguo 28/06/2006, 21:49
Avatar de emilio21  
Fecha de Ingreso: enero-2005
Ubicación: Venezuela
Mensajes: 320
Antigüedad: 12 años, 11 meses
Puntos: 1
...

investiga como renombrar un archivo en php..

cuando lo vayas a renombrar creas un random y se lo asignas como nombre al archivo.

para crear un random

<?php
$nombre = rand(10000,1000000);
//para ver el resultado
echo "$nombre";
?>

saludos!
__________________
¡Estamos para Enseñar y Aprender!
  #3 (permalink)  
Antiguo 28/06/2006, 21:52
Avatar de emilio21  
Fecha de Ingreso: enero-2005
Ubicación: Venezuela
Mensajes: 320
Antigüedad: 12 años, 11 meses
Puntos: 1
para renombrar un archivo

para ranombrar el archivo utiliza esto:

<?php
rename("/dir/archivo.ext", "/dir/$nombre.ext");
//$nombre es el codigo generado por el random
//luego insertas $nombre en tu base de datos
?>

espero te sirva!
__________________
¡Estamos para Enseñar y Aprender!
  #4 (permalink)  
Antiguo 28/06/2006, 21:56
 
Fecha de Ingreso: febrero-2005
Mensajes: 670
Antigüedad: 12 años, 10 meses
Puntos: 0
¿Para qué renombrarlo? Podés guardarlo directamente con ese nombre. Donde $nombre=$HTTP_POST_FILES['archivo']['name']; reemplazalo por el nombre que generás aleatoriamente. Fijate, antes que nada, de extraer la extensión del archivo original y concatenarla al final del nombre generado ;)

EDIT: ¿qué versión de php usás? $HTTP_POST_FILES está un poco obsoleta, mejor usá $_FILES ;)

Suerte
Fede
__________________
Federico H. García
Desarrollo Web
www.federicog.com.ar
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 17:47.