Foros del Web » Programando para Internet » PHP »

imap_8bit

Estas en el tema de imap_8bit en el foro de PHP en Foros del Web. Hola. Intnto mandar un mail, para ello leo nu archivo html, meto su contenido en una variable llamada $texto, luego on la funcion mail hago ...
  #1 (permalink)  
Antiguo 04/01/2005, 12:05
 
Fecha de Ingreso: abril-2004
Ubicación: Madrid
Mensajes: 159
Antigüedad: 13 años, 8 meses
Puntos: 0
imap_8bit

Hola.

Intnto mandar un mail, para ello leo nu archivo html, meto su contenido en una variable llamada $texto, luego on la funcion mail hago esto:

mail($mail, "Asunto", imap_8bit($texto), "From:[email protected] <p>\r\nReply-to:[email protected]\r\nContent-type: text/html; charset=iso-8859-1\r\nContent-Transfer-Encoding: Quoted-Printable\r\n")

Bien, con eso mando el mail pero :
Cuando lo mando a i cuenta de hotmail y lo veo se ve todo bien.

Cuando lo mando a mi cuenta de telefonica y lo miro con el outlook lo veo mal, veo muchas veces el texto =20 en el mail y en el codigo fuente (html del mail) a metido los caracteres 3D, que se corresponden con el =20 que me sale en el mensaje en muchos sitios.

Alquien me puede decir a que se debe eso y como arreglarlo ? y ya de paso una cadena quoted printable que es ? lo he leido por ahi pero no consigo enterarme.

Gracias y un saludo.
  #2 (permalink)  
Antiguo 04/01/2005, 13:22
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Para que usas la función imap_8bit()? y la cabecera HTTP: Content-Transfer-Encoding: Quoted-Printable ?

En principio .. fijate en los ejemplos de la función mail() (el último genera las cabeceras HTTP para enviarlo en formato HTML):

http://www.php.net/manual/en/function.mail.php

A lo sumo .. no uses \n\r .. sólo usa \n como separador de las cabeceras HTTP . .creo que por ahí da problemas según el S.O. del servidor que envie el e-mail. Si no se interpretan esos "saltos de línea" .. para el servidor que lo reciba y tenga que interpretarlo podría asumirlo como una sóla cabecera HTTP que no tendría sendido y por ende no se ejecutaría como tal entendiendo que el e-mail llega en formato de texto plano.

Un saludo,
  #3 (permalink)  
Antiguo 04/01/2005, 13:29
 
Fecha de Ingreso: abril-2004
Ubicación: Madrid
Mensajes: 159
Antigüedad: 13 años, 8 meses
Puntos: 0
no, parece que es problema del cliente de correo, que hay que configurarlo para formato de doble comilla, al final voy a hacer un str_replace de las dobles por simples y enviar el texto tal cual.sin imap_8bit, ke lo que hacia es permitirme enviar ".

Gracias y nu saludo, si alguien me puede dar alguna informacion mas gracias.
un saludo.
  #4 (permalink)  
Antiguo 04/01/2005, 13:36
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Si envias tu texto en formato HTML .. lo más lógico es que todo caracter que uses sea una entidad HTML .. para eso podrías usar:

htmentities()
http://www.php.net/htmlentities

Podrías poner un extracto de lo que contiene $texto .. por qué debería ser una página HTML como tal . .con su "<html> .. y sus <body> .. </body></html>" al menos para que cumpla con lo que es un standard de una página HTML que es al fin y al cabo lo que mandas por e-mail y así le indicas como cabeceras HTTP ..

Si vas a usar "htmlentities()" usalo para tus datos no para los tag's en sí de HTML que puedan tener comillas dobles o simles y otros caracteres (como acentos y demás).

Un saludo,
  #5 (permalink)  
Antiguo 04/01/2005, 13:38
 
Fecha de Ingreso: enero-2005
Mensajes: 21
Antigüedad: 12 años, 11 meses
Puntos: 0
Alguien podría decirme como publicar pequeños articulos con PHP (con ayuda de XML de preferencia)
__________________
Jr_X :cool:
  #6 (permalink)  
Antiguo 04/01/2005, 14:02
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Inicia un tema nuevo con tu pregunta .. no "respondas" a un mensaje (tienes el botón "nuevo tema" en la página principal del foro PHP).

Un saludo,
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 21:54.