Cita:
Iniciado por pateketrueke Bueno, son cosas diferentes, ¿ya sabes redimensionar imágenes?
Tu problema no está con la ruta temporal, está en que si no sabes hacer lo primero, que es tu objetivo, ¿entonces qué estás esperando?
Hay muchas librerías para manipular imagenes con PHP, o puedes usar ImageMagick, GD, etc.
Google siempre ayuda:
php redimensionar imagen
Edito: ya te lo han dicho...
ya logre dimensionar la imagen, y me la guarda el problema a hora es que no puedo subir imagnes pesadas, yo pensé que dimensionando las iva a poder subir
Código PHP:
<?php
if (!empty($_FILES)) {
$nombre="prueba";
$tempFile = $_FILES['Filedata']['tmp_name'];
$ext = substr($_FILES['Filedata']['name'], strrpos($_FILES['Filedata']['name'],'.'));
$targetPath = $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/';
$targetFile = str_replace('//','/',$targetPath) . $nombre.$ext;
//Ruta de la imagen original
$rutaImagenOriginal=$tempFile;
//Creamos una variable imagen a partir de la imagen original
$img_original = imagecreatefromjpeg($rutaImagenOriginal);
//Se define el maximo ancho y alto que tendra la imagen final
$max_ancho = 700;
$max_alto = 400;
//Ancho y alto de la imagen original
list($ancho,$alto)=getimagesize($rutaImagenOriginal);
//Se calcula ancho y alto de la imagen final
$x_ratio = $max_ancho / $ancho;
$y_ratio = $max_alto / $alto;
//Si el ancho y el alto de la imagen no superan los maximos,
//ancho final y alto final son los que tiene actualmente
if( ($ancho <= $max_ancho) && ($alto <= $max_alto) ){//Si ancho
$ancho_final = $ancho;
$alto_final = $alto;
}
/*
* si proporcion horizontal*alto mayor que el alto maximo,
* alto final es alto por la proporcion horizontal
* es decir, le quitamos al ancho, la misma proporcion que
* le quitamos al alto
*
*/
elseif (($x_ratio * $alto) < $max_alto){
$alto_final = ceil($x_ratio * $alto);
$ancho_final = $max_ancho;
}
/*
* Igual que antes pero a la inversa
*/
else{
$ancho_final = ceil($y_ratio * $ancho);
$alto_final = $max_alto;
}
//Creamos una imagen en blanco de tamaño $ancho_final por $alto_final .
$tmp=imagecreatetruecolor($ancho_final,$alto_final);
//Copiamos $img_original sobre la imagen que acabamos de crear en blanco ($tmp)
$imagen_f=imagecopyresampled($tmp,$img_original,0,0,0,0,$ancho_final, $alto_final,$ancho,$alto);
//Se destruye variable $img_original para liberar memoria
imagedestroy($img_original);
//Definimos la calidad de la imagen final
$calidad=95;
//Se crea la imagen final en el directorio indicado
imagejpeg($tmp,$targetFile,$calidad);
echo str_replace($_SERVER['DOCUMENT_ROOT'],'',$targetFile);
}
?>