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: 18 años, 8 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_archivo, strpos($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_archivo, 0, $posicionpunto);
    
//Sustituyo nombre viejo por nombre nuevo
    
$nombrefinal = substr_replace($nombre_archivo, $nuevonombre, 0, strlen($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.