Foros del Web » Programando para Internet » PHP »

Manipular Imagen Temporal?? $_FILES['userfile']['tmp_name']

Estas en el tema de Manipular Imagen Temporal?? $_FILES['userfile']['tmp_name'] en el foro de PHP en Foros del Web. tengo un pequeño problemilla que me esta volviendo loco, les explico, quiero que el usuario al cargar una imagen esta se redimencione para que juege ...
  #1 (permalink)  
Antiguo 15/12/2010, 19:39
Avatar de geeck22  
Fecha de Ingreso: agosto-2010
Ubicación: Tijuana B.C.
Mensajes: 79
Antigüedad: 13 años, 8 meses
Puntos: 7
Pregunta Manipular Imagen Temporal?? $_FILES['userfile']['tmp_name']

tengo un pequeño problemilla que me esta volviendo loco,
les explico, quiero que el usuario al cargar una imagen esta se redimencione para que juege el papel de thumbnail, y la misma imagen que subio se redimencione a un tamaño maximo si es mas grande..

que estoy haciendo mal? D:
Código PHP:
                    <?php
                    $folder 
"../../../galeria/blusas/";
                    
$folder_mn "../../../galeria/blusas/mn/";
                    
$maxlimit 5242880;
                    
$allowed_ext "jpg,gif,bmp,png,jpeg";
                    
$overwrite "no";
                    
$match ""
                    
$filesize $_FILES['userfile']['size'];
                    
$caracteres "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_";
                    
$rango 6;
                    
$max=strlen($caracteres)-1;
                    for (
$i=0;$i<$rango;$i++) {
                    
$filenamerand .= substr($caracteresrand(0$max), 1);}
                    
$filename = ($filenamerand).".".end(explode('.',$_FILES['userfile']['name']));
                    
$filename_mn = ($filenamerand)."-mn".".".end(explode('.',$_FILES['userfile']['name']));
                    
$error "";
                    
$original $_FILES['userfile']['name'];

                    
$global[0] = $_FILES['userfile']['tmp_name'];
                    
$global[1] = $_FILES['userfile']['tmp_name'];
                    
                    
$imagen $global[0];    
                    
$origen$imagen;
                    
$destino $imagen;
                    
$destino_temporal=tempnam("tmp/","tmp");
                    
$maxsize[0] =640;
                    
$maxsize[1] =480;
                    
$size GetImageSize($origen);
                               
$width $size[0];  
                               
$height $size[1];  
                    
$ancho $maxsize[0];
                    
$alto  $maxsize[1];

                    if (
$ancho && ($size[0] < $size[1])) {
                        
$ancho = ($alto $size[1]) * $size[0];
                    } else {
                        
$alto = ($ancho $size[0]) * $size[1];
                    } 

                    
redimensionar_jpeg($origen$destino_temporal$ancho$alto100);

                    
$fp=fopen($destino,"w");
                    
fputs($fp,fread(fopen($destino_temporal,"r"),filesize($destino_temporal)));
                    
fclose($fp);

                    function 
redimensionar_jpeg($img_original$img_nueva$img_nueva_anchura$img_nueva_altura$img_nueva_calidad)
                    {
                        
$img ImageCreateFromJPEG($img_original);
                        
$thumb imagecreatetruecolor($img_nueva_anchura,$img_nueva_altura);
                        
ImageCopyResized($thumb,$img,0,0,0,0,$img_nueva_anchura,$img_nueva_altura,ImageSX($img),ImageSY($img));
                        
ImageJPEG($thumb,$img_nueva,$img_nueva_calidad);
                        
//ImageDestroy($img);
                    
}
                    
$imagen_mn $global[1];    
                    
$origen$imagen_mn;
                    
$destino $imagen_mn;
                    
$destino_temporal=tempnam("tmp/","tmp");
                    
$maxsize[0] =200;
                    
$maxsize[1] =200;
                    
$size GetImageSize($origen);
                               
$width $size[0];  
                               
$height $size[1];  
                    
$ancho $maxsize[0];
                    
$alto  $maxsize[1];

                    if (
$ancho && ($size[0] < $size[1])) {
                        
$ancho = ($alto $size[1]) * $size[0];
                    } else {
                        
$alto = ($ancho $size[0]) * $size[1];
                    } 

                    
redimensionarmn_jpeg($origen$destino_temporal$ancho$alto100);

                    
$fp=fopen($destino,"w");
                    
fputs($fp,fread(fopen($destino_temporal,"r"),filesize($destino_temporal)));
                    
fclose($fp);

                    function 
redimensionarmn_jpeg($img_original$img_nueva$img_nueva_anchura$img_nueva_altura$img_nueva_calidad)
                    {
                        
$img ImageCreateFromJPEG($img_original);
                        
$thumb imagecreatetruecolor($img_nueva_anchura,$img_nueva_altura);
                        
ImageCopyResized($thumb,$img,0,0,0,0,$img_nueva_anchura,$img_nueva_altura,ImageSX($img),ImageSY($img));
                        
ImageJPEG($thumb,$img_nueva,$img_nueva_calidad);
                        
//ImageDestroy($img);
                    
}
                    
move_uploaded_file($imagen_mn$folder_mn.$filename_mn);
                    
                    if(!
$filename || $filename==""){ 
                       
$error "- Ningún archivo selecccionado para subir.<br>";
                    }elseif(
file_exists($folder.$filename) && $overwrite=="no"){
                       
$error "- El archivo <b>$filename</b> ya existe<br>";
                    }

                    if(
$filesize 1){ 
                       
$error .= "- Archivo vacío.<br>";
                    }elseif(
$filesize $maxlimit){ 
                       
$error .= "- Este archivo supera el máximo tamaño permitido.<br>";
                    }

                    
$array_ext explode (';',$allowed_ext);
                    
$ext strstr($filename['name'],'.');
                    
$ext=substr($ext,1);
                        if (!
in_array($ext,$array_ext)) {
                            
$match 1;
                    }

                    if(!
$match){
                       
$error .= "- Este tipo de archivo no está permitido: $filename<br>";
                    }
                    
                    if(
$error){
                       print 
"Se ha producido el siguiente error al subir el archivo:<br> $error";
                    }else{
                       if(
move_uploaded_file($imagen$folder.$filename)){ 
                    
mysql_connect('localhost','root','') or die('<b>Error conectando al servidor MySQL:</b><br />'.mysql_error());
                    
mysql_select_db('cherry') or die('<b>Error seleccionando la base de datos:</b><br />'.mysql_error()); 
                    
mysql_query("INSERT INTO blusas (id, imagen, nombre) VALUES ('', 'http://127.0.0.1/cherry Remodelacion/galeria/blusas/$filename', '$original')");
                    
                        echo 
'Se subio bien ';
                        echo 
$filename;
                          }else{
                          print 
" Error"
                       }
                       }
                       
?>
Saludos
  #2 (permalink)  
Antiguo 15/12/2010, 19:43
Avatar de geeck22  
Fecha de Ingreso: agosto-2010
Ubicación: Tijuana B.C.
Mensajes: 79
Antigüedad: 13 años, 8 meses
Puntos: 7
Respuesta: Manipular Imagen Temporal?? $_FILES['userfile']['tmp_name']

que puedo hacer para diferenciarlos? :/


$global[0] = $_FILES['userfile']['tmp_name'];
$global[1] = $_FILES['userfile']['tmp_name'];

Etiquetas: manipular, redimencionar, temporal, thumbnails
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:30.