Ver Mensaje Individual
  #9 (permalink)  
Antiguo 24/11/2005, 15:40
Avatar de jam1138
jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 22 años, 1 mes
Puntos: 102
Cita:
Iniciado por jam1138
poner la función al inicio de tu código. Desde donde dice "function redimencionar($file) {" hasta antes de "// Suponiendo se tiene <input type="file" name="imagen">". Posteriormente agregas la llamada a la función pasándole la ruta que haz generado
Código PHP:
<?php 

function redimencionar($file) { 
// Función que REEMPLAZA una imágen JPEG por otra con diferenetes dimenciones... 
// Se da por echo la imágen existe y es una imágen JPEG (no se hacen validaciones) 

$imagen = ImageCreateFromJPEG($file); 
unlink($file); // BORRAMOS el archivo original 
$width = imagesx($imagen); 
$height = imagesy($imagen); 

$nueva_anchura = 200; // Define aquí el ancho requerdo 
$nueva_altura = ($nueva_anchura * $height) / $width ;// Para un alto proporcinal (RECOMENDADO) ó ingresa directamente el alto requerido. 

if (function_exists("imagecreatetruecolor")) { 
$calidad = ImageCreateTrueColor($nueva_anchura, $nueva_altura); 
} else 
$calidad = ImageCreate($nueva_anchura, $nueva_altura); 

ImageCopyResized($calidad, $imagen, 0, 0, 0, 0, $nueva_anchura, $nueva_altura, $width, $height); 
ImageJPEG($calidad, $file, 100); 
imagedestroy($imagen); 
return 
true; 
// Forma de uso: 
// redimencionar(/ruta/archivo.jpg) 
} 


$extensiones=array("jpg","jpeg"); 
$dbuser="prueba"; //usuario de la base de datos 
$dbpass="prueba"; // password para la base 



if (isset($_FILES['archivo']['name'])){ // si estoy subiendo el archivo o es la primera carga de la pagina 


$path="imagenes/"; // path adonde la voy a guardar, en este caso mi_ubicacion_actual/imagenes 
$nombre=$_FILES['archivo']['name']; 
$tamanio=$_FILES['archivo']['size']; 
$tipo=$_FILES['archivo']['type']; 
$var = explode(".","$nombre"); 
$num = count($extensiones); 
$valor = $num-1; 
$admitido=false; 


for(
$i=0; $i<=$valor; $i++) { 
if(
$extensiones[$i] == $var[1]) { 
$admitido=true;//es una extension valida 
break; 
} 
} 
if (
$admitido){ 
$link=mysql_connect("localhost",$dbuser,$dbpass); 
mysql_select_db("test"); 
$tamanio=round($tamanio/1024,0); //redondeo y paso a kb 
$sql="Insert Into pics (tipo,size,path,titulo,texto) values ('" .$tipo. "'," .$tamanio. ",'" .$path. "','$titulo','$texto')"; 
mysql_query($sql); 
$lastid=mysql_insert_id(); 
$path.=$lastid . "-" . $nombre; 
$sql="Update pics set path='" . $path . "' Where id=$lastid"; 
mysql_query($sql); 

if (
is_uploaded_file($_FILES['archivo']['tmp_name'])) 
         { 
              
copy($_FILES['archivo']['tmp_name'], "$path"); 
                   if(!
redimencionar($path)) 
                          else echo 
"No se pudo redimencionar la imágen<br>"; 

?> 
<font color="#CCCCCC" size="2" face="Verdana, Arial, Helvetica, sans-serif">El 
archivo se ha subido correctamente al servidor.</font> 

<?php 
if (mysql_affected_rows($link)==0){?> 
<font color="#CCCCCC" size="2" face="Verdana, Arial, Helvetica, sans-serif">Ocurrio un error guardando 
en la base de datos. </font> 
<?php 
} 
} 
else 
{ 
?> 
<font color="#CCCCCC" size="2" face="Verdana, Arial, Helvetica, sans-serif">Error 
al subir el archivo.</font> 
<?php 
} 


}else{
?> 
<font color="#CCCCCC" size="2" face="Verdana, Arial, Helvetica, sans-serif">Tipo 
de archivo no admitido, debe ser .jpg &oacute; .jpeg</font> 
<?php 
} 
} 

?>
... el foro cuenta con etiquetas para encerrar código. Para PHP tienes [ PHP] código [ /PHP] (sin espacio)... en el editor tiene su propio botón PHP, también esta la etiqueta [HTML] y [CODE]... entre muchas otras. Buscalo en las opciones.

Saludos!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"