Foros del Web » Programando para Internet » PHP »

Marca de agua

Estas en el tema de Marca de agua en el foro de PHP en Foros del Web. Voy a replantear mi consulta de forma lo mas clara posilble a ver si alguien me puede indicar que hago mal tengo un archivo llamado ...
  #1 (permalink)  
Antiguo 07/06/2010, 20:51
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 8 meses
Puntos: 0
Pregunta Marca de agua

Voy a replantear mi consulta de forma lo mas clara posilble a ver si alguien me puede indicar que hago mal

tengo un archivo llamado marca.php
La imagen que usare como marca de agua esta en ../images/logoT.png

La imagen a la que le pondré la marca está en images/C/ 1801
1801 es el nombre de la imagen
Luego de que se ejecuta este codigo me muestra en pantalla el codigo binario de la imagen generada, y no se muestran errores

Finalmente intento desde otra pagina llamar a la imagen y solo logro que me nuestre un cuadro vacio
Aca pego los codigos de las dos paginas
Creo que el error debe andar en el llamado de la imagen
-gracias por ayudarme


Código PHP:
 <?


header
('content-type: image/jpeg');

include 
'db.php';
$ruta_marca 'http://www.mistio.com/images/logoT.png';
$watermark imagecreatefrompng($ruta_marca);

$ruta_imagen 'http://www.misitio/images/'.$_GET['foto'];



$imagen imagecreatefromjpeg($ruta_imagen);

//obtener las dimensiones de la imagen, sustraer las dimensiones de la marca de agua y,
// dejando un margen de 10 px, obtener las posiciones x e y sobre las que se colocará la marca de agua.


$tamanyo_imagen getimagesize($ruta_imagen);
$tamanyo_marca getimagesize($ruta_marca);
$dest_x $tamanyo_imagen[0] - $tamanyo_marca[0] - 10;
$dest_y $tamanyo_imagen[1] - $tamanyo_marca[1] - 10;

imagecopymerge($imagen$watermark$dest_x$dest_y00,$tamanyo_marca[0], $tamanyo_marca[1], 100);

// imagedestroy($imagen); //Libera la memoria asociada a la imagen
// imagedestroy($watermark);// //Libera la memoria asociada a la imagen


imagejpeg($imagen); //mostrar la imagen resultante

?>
Código PHP:
<?
 
include 'db.php';
mysql_select_db ($database);
$consulta "SELECT imagen1 FROM avisos WHERE idAviso=180 " ;
$resultado mysql_query($consulta);
$registro mysql_fetch_array($resultado);
$foto=$registro["imagen1"];

 
?>
<img src="marca.php?foto=C/<? echo $foto?>" alt="descripcion">

</body>
  #2 (permalink)  
Antiguo 07/06/2010, 21:54
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: Marca de agua

Trataste cambiando las rutas por algo como esto:
Código PHP:
$ruta_marca '/images/logoT.png'
Saludos!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #3 (permalink)  
Antiguo 07/06/2010, 22:06
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Marca de agua

Acabo de probar y me da error
Warning: imagecreatefrompng(/images/logoT.png) [function.imagecreatefrompng]: failed to open stream: No such file or directory in
solo poniendo las rutas completas no muestra erores y logro ver que genera el codigo binario de la imagen
  #4 (permalink)  
Antiguo 07/06/2010, 22:18
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: Marca de agua

Mmm... prueba cambiando de codigo por uno que soporte multiples formatos como este.

En una de esas hay alguna linea que esta haciendo algo raro y no pasa.

De todas maneras es cosa de ir probando hasta que resulte.

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #5 (permalink)  
Antiguo 07/06/2010, 22:41
rpv
 
Fecha de Ingreso: febrero-2010
Mensajes: 275
Antigüedad: 14 años, 2 meses
Puntos: 10
Respuesta: Marca de agua

Amigo, tu error es con los paths (ubicaciones) de las imágenes, unos puntos:

No deberías usar paths absolutos de tipo url (eje:hxxp://tuservidor.com/tupath/a/lasimagenes.jpg) cuando las imágenes están en el mismo servidor que procesa la marca de agua.

Los paths (ubicación) de las imágenes se basan en el script (tu archivo .php) que las procesa.

Los paths y nombres de archivo en unix (linux y similares) distingue entre mayúsculas y minúsculas (en windows: archivo.jpg y Archivo.jpg son el mismo, en unix/linux son dos archivos distintos).
  #6 (permalink)  
Antiguo 08/06/2010, 19:20
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 8 meses
Puntos: 0
Pregunta Respuesta: Marca de agua

Cita:
Iniciado por rpv Ver Mensaje
Amigo, tu error es con los paths (ubicaciones) de las imágenes, unos puntos:

No deberías usar paths absolutos de tipo url (eje:hxxp://tuservidor.com/tupath/a/lasimagenes.jpg) cuando las imágenes están en el mismo servidor que procesa la marca de agua.

Los paths (ubicación) de las imágenes se basan en el script (tu archivo .php) que las procesa.

Los paths y nombres de archivo en unix (linux y similares) distingue entre mayúsculas y minúsculas (en windows: archivo.jpg y Archivo.jpg son el mismo, en unix/linux son dos archivos distintos).
Cambie esta ruta
$ruta_marca = 'http://www.mistio.com/images/logoT.png';
por
$ruta_marca = 'images/logoT.png';
De todas maneras sigue mostrando el cuadro en blanco
Gracias por seguirme ayudando , pues ya no se como solucionar esto!!
  #7 (permalink)  
Antiguo 09/06/2010, 08:08
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: Marca de agua

Muy pocas veces sucede que la foto tiene que tener permisos 777 (no recuerdo en que configuracion de servidor me ha pasado) pero prueba por si acaso.

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!

Etiquetas: agua, marca
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 14:05.