Foros del Web » Programando para Internet » PHP »

me marca error de funcion en GD porque?

Estas en el tema de me marca error de funcion en GD porque? en el foro de PHP en Foros del Web. buenas!!! estoy entrando en el tema de manejo de imagenes y graficos y por lo pronto tengo la "mision" de poner una marca de agua ...
  #1 (permalink)  
Antiguo 30/12/2009, 16:18
 
Fecha de Ingreso: abril-2003
Ubicación: Mexico
Mensajes: 604
Antigüedad: 21 años
Puntos: 23
Pregunta me marca error de funcion en GD porque?

buenas!!!

estoy entrando en el tema de manejo de imagenes y graficos
y por lo pronto tengo la "mision" de poner una marca de agua a una imagen

eh buscado y me eh encontrado con este codigo
Código PHP:
<?php
// Load the stamp and the photo to apply the watermark to
$stamp imagecreatefrompng('stamp.png');
$im imagecreatefromjpeg('photo.jpeg');

// Set the margins for the stamp and get the height/width of the stamp image
$marge_right 10;
$marge_bottom 10;
$sx imagesx($stamp);
$sy imagesy($stamp);

// Copy the stamp image onto our photo using the margin offsets and the photo
// width to calculate positioning of the stamp.
imagecopy($im$stampimagesx($im) - $sx $marge_rightimagesy($im) - $sy $marge_bottom00imagesx($stamp), imagesy($stamp));

// Output and free memory
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);
?>
me arroja estos errores
Código:
Warning: imagecreatefromjpeg(photo.jpeg) [function.imagecreatefromjpeg]: failed to open stream: No such file or directory in C:\www\giina\test\chat\proteccionfoto.php on line 4

Warning: imagesx(): supplied argument is not a valid Image resource in C:\www\giina\test\chat\proteccionfoto.php on line 14

Warning: imagesy(): supplied argument is not a valid Image resource in C:\www\giina\test\chat\proteccionfoto.php on line 14

Warning: imagecopy(): supplied argument is not a valid Image resource in C:\www\giina\test\chat\proteccionfoto.php on line 14

Warning: Cannot modify header information - headers already sent by (output started at C:\www\giina\test\chat\proteccionfoto.php:4) in C:\www\giina\test\chat\proteccionfoto.php on line 17

Warning: imagepng(): supplied argument is not a valid Image resource in C:\www\giina\test\chat\proteccionfoto.php on line 18

Warning: imagedestroy(): supplied argument is not a valid Image resource in C:\www\giina\test\chat\proteccionfoto.php on line 19
ya verifique que este habilitado el manejo de GD en php y si aparece

Código:
ftp
FTP support                        enabled  


gd
GD Support                         enabled  
GD Version                         bundled (2.0.34 compatible)  
FreeType Support              enabled  
FreeType Linkage               with freetype  
FreeType Version                2.1.9  
T1Lib Support                 enabled  
GIF Read Support             enabled  
GIF Create Support                enabled  
JPG Support                       enabled  
PNG Support                     enabled  
WBMP Support                  enabled  
XBM Support                     enabled  


gettext
GetText Support                enabled
eh buscado informacion y veo que las funciones son parte de GD pero todo esta en ingles y no entiendo bien su funcionamiento

alguien que me apoye y me oriente??

de antemano muchas Gracias!!!

un saludo!!
__________________
¡El Respeto al Derecho Ajeno Es la Paz!
  #2 (permalink)  
Antiguo 30/12/2009, 16:20
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Respuesta: me marca error de funcion en GD porque?

El primer error dice que no encontro el archivo "photo.jpeg" (como no le indicas ruta lo busca en el mismo directorio donde esta el script ejecutandose)

Los demas errores se derivan del primero
  #3 (permalink)  
Antiguo 30/12/2009, 16:23
 
Fecha de Ingreso: abril-2003
Ubicación: Mexico
Mensajes: 604
Antigüedad: 21 años
Puntos: 23
Respuesta: me marca error de funcion en GD porque?

buenas!!

el caso es que SI existe las imagenes en donde estan los scripts

en otras palabras en el mismo directorio que se ejecutan estan las imagenes creadas tal cual con el mismo nombre y caracteristicas

gracias por responder y...

un saludo!!!
__________________
¡El Respeto al Derecho Ajeno Es la Paz!
  #4 (permalink)  
Antiguo 30/12/2009, 19:43
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: me marca error de funcion en GD porque?

Pues el error es claro, tal como te dice darkasecas, prueba poniendo al inicio del script un file_exists.

Ahora revisa que la extensión de la foto sea jpeg tal cual y no jpg, o en su caso cambia el nombre.

Saludos.
  #5 (permalink)  
Antiguo 30/12/2009, 23:37
 
Fecha de Ingreso: abril-2003
Ubicación: Mexico
Mensajes: 604
Antigüedad: 21 años
Puntos: 23
Respuesta: me marca error de funcion en GD porque?

buenas....

pues.... no se que paso pero lo eh solucionado convirtiendolo en funcion

Código PHP:

$foto 
"photo.jpeg";
echo 
protegefoto($foto);

function 
protegefoto($fotop)
{
 
$proteg "stamp.png";
 
$stamp imagecreatefrompng($proteg);
 
$im imagecreatefromjpeg($fotop);
     
// Set the margins for the stamp and get the height/width of the stamp image
     
$marge_right 10;
     
$marge_bottom 10;
     
$sx imagesx($stamp);
     
$sy imagesy($stamp);

   
// Copy the stamp image onto our photo using the margin offsets and the photo
   // width to calculate positioning of the stamp.
   
imagecopy($im$stampimagesx($im) - $sx $marge_rightimagesy($im) - $sy $marge_bottom00imagesx($stamp), imagesy($stamp));

      
// Output and free memory
      
header('Content-type: image/png');
      
imagepng($im);
      
imagedestroy($im);

y listo..... funciona perfecto....

ahora estoy tratando de que identifique el tipo de archivo pero aun no encuentro como

ya que al subir un .gif o .png aun cuando le cambio la extencion a .jpeg o .jpg marca error

alguna idea de como realizarlo???

un saludo!!!
__________________
¡El Respeto al Derecho Ajeno Es la Paz!
  #6 (permalink)  
Antiguo 31/12/2009, 00:08
 
Fecha de Ingreso: enero-2008
Mensajes: 381
Antigüedad: 16 años, 3 meses
Puntos: 19
Respuesta: me marca error de funcion en GD porque?

Asi

Código PHP:
                $path "La ruta";
                
$ext end(explode(".",$path));
                if (
strlen($ext) != && strlen($ext) != 4) {
                    die(
"Extensión incorrecta o archivo sin extension.");
                }
                switch(
$ext) {
                    case 
'jpg':
                    case 
'jpeg':
                    
$img imagecreatefromjpeg($path);
                    break;
                    
                    case 
'gif':
                    
$img imagecreatefromgif($path);
                    break;
                    
                    case 
'png':
                    
$img imagecreatefrompng($path);
                    break;
                    
                    default:
                    die(
"Extension no conocida");
                    break;
                } 
Y en $ext quedara la extension de ese archivo

Saludos!
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 12:32.