Código:
Pareciera que el archivo no esta en ese directorio pero no es asi, el archivo existe tiene el peso correcto y el directorio tiene los permisos dados para que se pueda acceder.fotos/fotos/Soja_009.jpg Warning: imagecreatefromjpeg(fotos/fotos/Soja_009.jpg) [function.imagecreatefromjpeg]: failed to open stream: No such file or directory in /www/docs/fotositio.net/public_html/BancoImagenes/VerImagenMio.php on line 8 Warning: imagesx(): supplied argument is not a valid Image resource in /www/docs/fotositio.net/public_html/BancoImagenes/VerImagenMio.php on line 10 Warning: imagesy(): supplied argument is not a valid Image resource in /www/docs/fotositio.net/public_html/BancoImagenes/VerImagenMio.php on line 11 Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /www/docs/fotositio.net/public_html/BancoImagenes/VerImagenMio.php on line 39 Warning: Cannot modify header information - headers already sent by (output started at /www/docs/fotositio.net/public_html/BancoImagenes/VerImagenMio.php:4) in /www/docs/fotositio.net/public_html/BancoImagenes/VerImagenMio.php on line 44
Este mismo archivo lo abro en mi maquina loca y no hay problema, el codigo anda bien ya que con otras imagenes que he probado inicialmente cargandolas desde el sistema que hice se ven perfectamente el problema es con estas imagenes.
Este es el codigo php
Código PHP:
<?php
$ruta = "fotos/".$_GET['ruta'];
echo $ruta;
$nuevo_ancho = $_GET['ancho'];
$nuevo_alto = $_GET['alto'];
$fuente = imagecreatefromjpeg($ruta);
$imagen = imagecreatetruecolor($ancho,$alto); //Con esta linea mejoro la calidad de la imagen
$imgAncho = imagesx ($fuente);
$imgAlto =imagesy($fuente);
//Determino las nuevas medidas en función de los límites
if($imgAncho > $nuevo_ancho OR $imgAlto > $nuevo_alto)
{
if(($imgAlto - $nuevo_alto) > ($imgAncho - $nuevo_ancho))
{
$nuevo_ancho = round($imgAncho * $nuevo_alto / $imgAlto,0) ;
}
else
{
$nuevo_alto = round($imgAlto * $nuevo_ancho / $imgAncho,0);
}
}
else //si la imagen es más pequeña que los límites la dejo igual.
{
$nuevo_alto = $imgAlto;
$nuevo_ancho = $imgAncho;
}
//Tratar de hacer transparente la imagen negra que sobra en las fotos
$negro = imagecolorallocate($imagen,0,0,0);
$transparente = imagecolortransparent ($imagen, $negro);
imagefill($imagen,0,0,$transparente);
//
imagecopyresampled($imagen,$fuente,0,0,0,0,$nuevo_ancho,$nuevo_alto,$imgAncho,$imgAlto);
//header("Content-type: image/jpeg");
//imagejpeg($imagen,'',100);
header("Content-type: image/png");
imagepng($imagen);
imagedestroy($imagen);
?>
Espero su ayuda, muchas gracias.