Ver Mensaje Individual
  #9 (permalink)  
Antiguo 27/05/2005, 07:19
sebtev
 
Fecha de Ingreso: enero-2004
Ubicación: Salto
Mensajes: 484
Antigüedad: 20 años, 3 meses
Puntos: 2
dimensionar.php
Código PHP:
<?php
foreach($_POST as $nombre_campo => $valor){$asignacion "\$".$nombre_campo."='".addslashes($valor)."';";
    eval(
$asignacion);}
foreach(
$_GET as $nombre_campo => $valor){$asignacion "\$".$nombre_campo."='".$valor."';";
    eval(
$asignacion);}
foreach(
$_FILES as $nombre_campo => $valor){$asignacion "\$".$nombre_campo."='".$valor."';";
    eval(
$asignacion);}
?>
<?
$imagen 
$_GET["imagen"];
$ancho $_GET["ancho"];
$alto $_GET["alto"];
$calidad $_GET["calidad"]; //de 1 a 100
if(substr($imagen,-3) == "jpg" || substr($imagen,-3) == "JPG" || substr($imagen,-4) == "JPEG"){
$src_img imagecreatefromjpeg($imagen);
}
elseif(
substr($imagen,-3) == "gif" || substr($imagen,-3) == "GIF"){
$src_img imagecreatefromgif($imagen);
}else{
header("Location: $imagen");
}
$ancho_original imagesx($src_img);
$alto_original imagesy($src_img);
if(!
$alto){
$alto = ($ancho $ancho_original) * $alto_original;
}
if(!
ancho){
$ancho = ($alto $alto_original) * $ancho_original;
}
if(!
$calidad){
$calidad 80;
}
$dst_img imagecreatetruecolor($ancho,$alto);
imagecopyresampled($dst_img$src_img,0,0,0,0,$ancho,$alto,$ancho_original,$alto_original);
header("Content-Type: image/jpeg");
imagejpeg($dst_img,'',$calidad);
imagedestroy($src_img);
imagedestroy($dst_img);
?>
luego la llamas así:
Código PHP:
echo "<img src=\"http://www.tusitio.com/dimensionar.php?imagen=".$fila['imagen']."&ancho=100&calidad=80\" width=\"100\" border=\"0\" align=\"left\">"
Donde la variable ancho=100 es el ancho del thumbail q quieres crear. $fila['imagen'] es el path donde está alojada la img. La variable $calidad es relativa, si quieres la mandas, sino no...
El problema q debes de tener es mal el path, create un archivo, cualquier nombre, y guardalo en la carpeta donde tienes las imagenes. En el mismo pon esto:
Código PHP:
<?
echo $_SERVER['SCRIPT_FILENAME'];
?>
Este te dará el path completo hacia el script, por ende, sacándole el nombre del script, te quedaría el path completo hacia la img.
Incluso podrías usar dirname() y guardar en la DB solo el nombre de la img más el time() y luego con $_SERVER['SCRIPT_FILENAME'] y dirname, crear el path hacia la img.

script_en_la_carpeta_img.php
Código PHP:
$path $_SERVER['SCRIPT_FILENAME'];
dirname($path);
echo 
$path
Recuerda q este script debe estar en la carpeta donde guardas las imgs y deberás llamarlo cuando lo uses, puedes hacerlo con un include(). Usa JPG no GIF
Saludos cuidate
__________________
Dios dira que esto no es justo, pero lo sera...