Ver Mensaje Individual
  #6 (permalink)  
Antiguo 01/12/2008, 12:13
Avatar de Adolfiten
Adolfiten
 
Fecha de Ingreso: enero-2008
Ubicación: Frente a mi monitor...
Mensajes: 572
Antigüedad: 16 años, 4 meses
Puntos: 7
Respuesta: Trabajar con imagenes en PHP

Tengo un fragmento de código de hace tiempo, cuando hice una especie de rejunte para un inventito.

Código PHP:
/*Los parámetros que esta función recibe son:
nombre_archivo --> $HTTP_POST_FILES['archivo']['name']
tamanio_archivo --> $HTTP_POST_FILES['archivo']['size']
destino --> Ruta destino. EJ: "imagenes/"
nuevonombre --> Nuevo nombre que adoptará. La función se encarga de mantener la extensión
temp --> $HTTP_POST_FILES['archivo']['tmp_name']      */
function upload($nombre_archivo$tamanio_archivo$destino$nuevonombre$temp)
{
    
//$extension = strrchr($nombre_archivo,'.');
    
$extension substr($nombre_archivostrpos($nombre_archivo,'.'), strlen($nombre_archivo));

    
//Se busca la posición del punto para saber hasta dónde va el viejo nombre
    
$posicionpunto strpos($nombre_archivo".");
    
//Obtengo nombre viejo para poder buscarlo en el nombre original
    
$nombreviejo substr($nombre_archivo0$posicionpunto);
    
//Sustituyo nombre viejo por nombre nuevo
    
$nombrefinal substr_replace($nombre_archivo$nuevonombre0strlen($nombreviejo));
    
//Coloco el nombre final luego del directorio de destino
    
$destino $destino.$nombrefinal;


    
    
//Busca si la extensión está dentro de las aceptadas
    
if (!((stripos($extension"jpg") || stripos($extension"jpeg") || stripos($extension"gif") || stripos($extension"png") || stripos($extension"txt") || stripos($extension"doc") || stripos($extension"xls") || stripos($extension"ppt") || stripos($extension"pps")) && ($tamano_archivo 1000000))) {
        return 
false;
    }else
    {
        if (
move_uploaded_file($temp$destino)){
            return 
true;
        }else
        {
            return 
false;
        }
    }

Espero que sirva de algo.

Otra cosita, fijate que las extensiones sean las indicadas, por las dudas intentá verle las extensiones a los archivos entrando a las opciones de carpeta si usás windows, es más que nada para descartar esa posibilidad.