Foros del Web » Programando para Internet » PHP »

Librerias GD

Estas en el tema de Librerias GD en el foro de PHP en Foros del Web. Vaya, me volvi loco y al final consegui cargar cuatro capas con un código sencillo, pero mi objetivo era cargar la imagen en base a ...
  #1 (permalink)  
Antiguo 24/03/2010, 07:29
 
Fecha de Ingreso: abril-2002
Mensajes: 33
Antigüedad: 22 años, 7 meses
Puntos: 0
Librerias GD

Vaya, me volvi loco y al final consegui cargar cuatro capas con un código sencillo, pero mi objetivo era cargar la imagen en base a unos valores.

Curiosamente si el valor llega por $ lo acepta, pero me pasa lo siguiente

$torn = "tornilloplata.png"; //ASI FUNCIONA A LA PERFECCION
//$torn = $tornillo2; // ASI PASA DEL TEMA, NO LO LEE

He probado 1000 posiciones, con comillas, sin comillas, la Query funciona a la perfeccion, la saco unas lineas antes y vero resultado.

$imagen4 = imagecreatefrompng($ruta.$ResultQuerytornillo[fotoprod]);

Intuyo que mi ignorancia y las exigencias de las librerías me quitan el sueño, espero alguien de con la solución

$tor=8;
$Querytornillo = 'select fotoprod from productos where codprod='.$tor;
$IdConsultatornillo = mysql_query($Querytornillo, $IdConexion);
$ResultQuerytornillo = mysql_fetch_array($IdConsultatornillo);
$tornillo2 = $ResultQuerytornillo[fotoprod];
print $tornillo2 ;

$ruta="images/media/";
$pie="piedrascromo.png";
$fron ="frontalfuego2.png";
$llama ="llamaazul.png";
$llam =$llama;
$torn = "tornilloplata.png"; //ASI FUNCIONA A LA PERFECCION
//$torn = $tornillo2; // ASI PASA DEL TEMA, NO LO LEE

$tornillo = $ruta.$torn;
$piedras = $ruta.$pie;
$frontal = $ruta.$fron;
$llamas = $ruta.$llam;


$imagen1 = imagecreatefrompng($llamas);
$imagen2 = imagecreatefrompng($piedras);
$imagen3 = imagecreatefrompng($frontal);
$imagen4 = imagecreatefrompng($tornillo);



$fondo = imagecreatetruecolor(600, 300);

imagecopy($fondo,$imagen1,0,0,0,0,600,300);
imagedestroy($imagen1);
imagecopy($fondo,$imagen2,0,0,0,0,600,300);
imagedestroy($imagen2);
imagecopy($fondo,$imagen3,0,0,0,0,600,300);
imagedestroy($imagen3);
imagecopy($fondo,$imagen4,0,0,0,0,600,300);
imagedestroy($imagen4);

// Damos salida a la imagen final
header("Content-type: image/png");
imagepng($fondo);

// Destruimos ambas imágenes
imagedestroy($imagen1);
imagedestroy($imagen2);
imagedestroy($imagen3);
imagedestroy($imagen4);
__________________
Sergio Sánchez
www.sergio.es
  #2 (permalink)  
Antiguo 24/03/2010, 08:30
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 9 meses
Puntos: 81
Respuesta: Librerias GD

No sera que viene con algun espacio o algo asi?...

Trata poniendo esto:
Código PHP:
$tornillo2 $ResultQuerytornillo[fotoprod]; 
print 
'-'.$tornillo2.'-';
print 
'-'.trim($tornillo2).'-'
Tu variable deberia verse en pantalla asi:
Código:
- tornilloplata.png - //con espacio en alguno de los dos lados
-tornilloplata.png- //sin espacios
Puede ser una solucion o puede que no... pero al menos probamos algo.

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #3 (permalink)  
Antiguo 24/03/2010, 08:49
 
Fecha de Ingreso: abril-2002
Mensajes: 33
Antigüedad: 22 años, 7 meses
Puntos: 0
Respuesta: Librerias GD

-tornilloplata.png-

Lo siento, no es eso. no obstante gracias por el aporte, no había comprobado eso.

Salu2,
__________________
Sergio Sánchez
www.sergio.es
  #4 (permalink)  
Antiguo 24/03/2010, 08:50
 
Fecha de Ingreso: abril-2002
Mensajes: 33
Antigüedad: 22 años, 7 meses
Puntos: 0
Respuesta: Librerias GD

Ya por dar datos, no se veían bien las transparencias hasta que le meti un fondo, ahora va de miedo la funcion gd, a excepción de algo tan raro como lo que especifico, se que parezco idiota, pero es lo que pasa, lo juro!!!!

El código es perfectamente correcto, lo único que necesito pasar los valores de las fotos de forma dinamica.
__________________
Sergio Sánchez
www.sergio.es
  #5 (permalink)  
Antiguo 24/03/2010, 08:56
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 9 meses
Puntos: 81
Respuesta: Librerias GD

Prueba esto:
Código PHP:
function LoadPNG($imgname//extracted from php.net online manual
{
    
/* Attempt to open */
    
$im = @imagecreatefrompng($imgname);

    
/* See if it failed */
    
if(!$im)
    {
        
/* Create a blank image */
        
$im  imagecreatetruecolor(15030);
        
$bgc imagecolorallocate($im255255255);
        
$tc  imagecolorallocate($im000);

        
imagefilledrectangle($im0015030$bgc);

        
/* Output an error message */
        
imagestring($im155'Error loading ' $imgname$tc);
    }

    return 
$im;

Aplica esa funcion en una pagina nueva solo a la foto q no funciona.

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #6 (permalink)  
Antiguo 24/03/2010, 09:07
 
Fecha de Ingreso: abril-2002
Mensajes: 33
Antigüedad: 22 años, 7 meses
Puntos: 0
Respuesta: Librerias GD

Genial, muchisimas gracias, pero di el error, lo cuento, pues tengo la sensación que a otros les pasará.

<img alt="captcha" title="Ingrese este código" src="gd.php" />

yo llamo así a mi imagen, aunque siempre me guarda los parametros de ocasión llamando asi un php no lo hace.

Mis comprobaciones eran fuera de gd.php, para poder ver el resultado. Al añadir el archivo de conexion (repetido dentro del archivo gd) paso a funcionar perfectamente.

Tampoco me cogía los valores, si no los sacos dentro del mismo archivo gd, creo que es muy atípico y por eso generalizado.

Espero resulte util mi aporte, 1000 gracias por vuestra colaboración.
__________________
Sergio Sánchez
www.sergio.es

Etiquetas: Ninguno
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 22:06.