Foros del Web » Programando para Internet » PHP »

Problema extraño con plantilla HTML-PHP de newsletter

Estas en el tema de Problema extraño con plantilla HTML-PHP de newsletter en el foro de PHP en Foros del Web. Saludos cordiales a todos, Tengo un problema con una plantilla HTML/CSS + PHP que estoy utilizando para el envío de boletines electrónicos (newsletters). La plantilla ...
  #1 (permalink)  
Antiguo 28/07/2009, 01:49
 
Fecha de Ingreso: julio-2009
Mensajes: 6
Antigüedad: 14 años, 8 meses
Puntos: 0
Problema extraño con plantilla HTML-PHP de newsletter

Saludos cordiales a todos,

Tengo un problema con una plantilla HTML/CSS + PHP que estoy utilizando para el envío de boletines electrónicos (newsletters).

La plantilla está en HTML/CSS, y dentro de ella tengo embebido el código PHP necesario para conectar con la base de datos MySQL y recuperar una serie de campos de una tabla, que me sirven para mostrar de forma dinámica los contenidos de una serie de noticias (titular de la noticia, breve resumen y foto adjunta en thumbnail).

El caso es que aparentemente todo lo hace bien, sin embargo al realizar las pruebas de envío, no sé muy bien por qué, me introduce de vez en cuando, no siempre, un código HTML, o código ASCII o algo así, no sé muy bien como definirlo, cuyos caracteres son: !%0A+

Algunas veces me introduce dicho código en el código relativo a la ruta de la imagen en thumbnail de las notas de prensa, con lo cuál cuando se recibe el newsletter la imagen no se vé, puesto que la ruta está incorrecta (debido a dicho código), otras veces me introduce el código en la ruta de algunos enlaces dentro del boletín (con lo cuál dichos enlaces al ser pulsados aparecen como enlaces rotos, pues la ruta queda incorrecta, debido a dicho código), etc...

Es decir, que no sé por qué, pero el código se incrusta en sitios diferentes en cada ocasión, pero no siempre pasa.

Alguien tiene alguna sugerencia de cómo solucionarlo?

Muchas gracias a todos por adelantado, me es muy urgente.
  #2 (permalink)  
Antiguo 28/07/2009, 02:25
Avatar de rafaconpu  
Fecha de Ingreso: febrero-2006
Mensajes: 331
Antigüedad: 18 años, 2 meses
Puntos: 3
Respuesta: Es urgente! Problema extraño con plantilla HTML-PHP de newsletter

Hola.

Puede ser problemas de collation de la página html y de la base de datos. Te comento esto porque a mi me pasa algo parecido.

Tengo en la base de datos guardado un registro correctamente y al mostrarlo me aparecen carácteres extraños.

La solución es que compruebes que tanto la collation y codificación de la base de datos sea igual a la que utilizas en el html.

Si aun así te sigue dando fallos ya nos lo dices.

Saludos.
  #3 (permalink)  
Antiguo 28/07/2009, 04:16
Avatar de blekia  
Fecha de Ingreso: julio-2009
Mensajes: 204
Antigüedad: 14 años, 9 meses
Puntos: 6
Respuesta: Es urgente! Problema extraño con plantilla HTML-PHP de newsletter

hola juanchis, intenta con utf8_decode($var)

me parece que tu base de datos almacena las eñes y tildes en utf8 y al coger el contenido te pone el caracter tal cual en el email. ¿Usas algún script para crear la plantilla del email? seguramente éste utilice utf8_encode a la hora de introducir los datos en el query.

salu2

Cita:
Iniciado por juanchis1979 Ver Mensaje
Saludos cordiales a todos,
El caso es que aparentemente todo lo hace bien, sin embargo al realizar las pruebas de envío, no sé muy bien por qué, me introduce de vez en cuando, no siempre, un código HTML, o código ASCII o algo así, no sé muy bien como definirlo, cuyos caracteres son: !%0A+
  #4 (permalink)  
Antiguo 28/07/2009, 05:34
 
Fecha de Ingreso: julio-2009
Mensajes: 6
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Es urgente! Problema extraño con plantilla HTML-PHP de newsletter

Hola rafacompu y blekia,

Antes que nada gracias por la pronta respuesta!

En relación a lo que comentáis, he probado a ver cuál era el contenido de la variable que le paso a la función mail() justo antes del envío, la cual contiene el código HTML+PHP, y en dicho código no aparece por ningún lado el "código extraño" (!%0A+), por lo que al parecer dicho código se incrusta en mi código del boletín justamente al realizar el envío (función mail()).

He comprobado el cotejamiento de mi base de datos (MySQL), y era latin_spanish. He probado a cambiarla a utf-8. Asímismo, como cabecera (headers) de la función mail() tenía puesto:

Content-type: text/html; charset=iso-8859-1

He probado a cambiarlo a utf-8, pero nada, sigue apareciendo el maldito código. Por otro lado, también he probado a usar la función utf8_decode(), con identicos resultados.

Estoy un poco desesperado con el tema, pues no sé que más probar.

De nuevo gracias por todo chicos.
  #5 (permalink)  
Antiguo 28/07/2009, 09:02
Avatar de blekia  
Fecha de Ingreso: julio-2009
Mensajes: 204
Antigüedad: 14 años, 9 meses
Puntos: 6
Respuesta: Es urgente! Problema extraño con plantilla HTML-PHP de newsletter

porque no pruebas PHPMailer? phpmailer-worxware-com / index.php?pg=phpmailer

te permite incluso incrustar imágenes en el mismo email.

Cita:
Iniciado por juanchis1979 Ver Mensaje
Hola rafacompu y blekia,

Antes que nada gracias por la pronta respuesta!

En relación a lo que comentáis, he probado a ver cuál era el contenido de la variable que le paso a la función mail() justo antes del envío, la cual contiene el código HTML+PHP, y en dicho código no aparece por ningún lado el "código extraño" (!%0A+), por lo que al parecer dicho código se incrusta en mi código del boletín justamente al realizar el envío (función mail()).

He comprobado el cotejamiento de mi base de datos (MySQL), y era latin_spanish. He probado a cambiarla a utf-8. Asímismo, como cabecera (headers) de la función mail() tenía puesto:

Content-type: text/html; charset=iso-8859-1

He probado a cambiarlo a utf-8, pero nada, sigue apareciendo el maldito código. Por otro lado, también he probado a usar la función utf8_decode(), con identicos resultados.

Estoy un poco desesperado con el tema, pues no sé que más probar.

De nuevo gracias por todo chicos.
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 18:22.