Foros del Web » Programando para Internet » PHP »

detalles sobre mail

Estas en el tema de detalles sobre mail en el foro de PHP en Foros del Web. Hola. Tengo varias preguntas... Tengo un news letter que envio a unos 3000 suscriptores, uso la función mail de esta manera: Código PHP: mail ( ...
  #1 (permalink)  
Antiguo 11/08/2004, 10:36
 
Fecha de Ingreso: julio-2003
Ubicación: Viña del mar
Mensajes: 111
Antigüedad: 14 años, 5 meses
Puntos: 0
detalles sobre mail

Hola. Tengo varias preguntas...

Tengo un news letter que envio a unos 3000 suscriptores, uso la función mail de esta manera:

Código PHP:
mail($row[1], $asunto$email_mensage_1"From: Empresa <[email protected]>\nReturn-Path: \"e\" <[email protected]>\nReply-To: \"[email protected]\" <[email protected]>\nContent-Type: text/html "); 
a muchos le llega con formato html correctamente pero hay muchos que les llega el html como texto.

Por que sucede esto y como puedo evitarlo?
a pesar de ser un news letter, hay varios a quienes no les llegan los emails, puede un servidor marcarme y no dejar pasar el correo sin que este sea spam?

Saludos y gracias
  #2 (permalink)  
Antiguo 11/08/2004, 10:54
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Hola grid,

Cita:
a muchos le llega con formato html correctamente pero hay muchos que les llega el html como texto.
Deberias centrar el problema por tipo de cliente de e-mail que usan para leer tu e-mail. Por ejemplo si falla en "webmails" (y cuales) estaría bueno saber si ese "webmail" trabaja con iframes o similar para abrir el e-mail o incrustran tu HTML sobre el de la própia página del webmail.

También habría que ver la página HTML que compones como mensaje que envias. Las cabeceras HTTP para mail() ya indicas que el formato es HTML .. pero, no vemos si en tu HTML de tu e-mail (el cuerpo dle mensaje) incluyes tus própias etiquetas HTML de <html><head></head><body> ..... </body></html> .. Por qué, si te fijas .. la mayoría de webmails "incrustran" tu HTML (el de tu mensaje) sobre la própia página HTML que es ya de por sí ese "webmail" .. así que, los tag's HTML que "mandan" en cuanto a la definición del "<body> .. <head> y demás" son las de tu "webmail" y no las tuyas .. Por ahí podrías tener problemas.

Cita:
Por que sucede esto y como puedo evitarlo?
a pesar de ser un news letter, hay varios a quienes no les llegan los emails, puede un servidor marcarme y no dejar pasar el correo sin que este sea spam?
Bueno .. el hecho de que algunos no "llegue" tendrías que ver en tu MTA usado (el servidor SMTP/sendmail de mail que usa PHP para enviar los e-mails) sus registro de log's y ver que pasó exactamente, es ahí donde veras esa información detallada. PHP con su función mail() no puede obtener mas que un resultado de "entregé" el e-mail al MTA .. pero nada más (salvo lo que si el destinatario responde a tu "Return-path" dirección sobre algún problema con la entrega del e-mail .. tipo: cuenta llena, usuario no existe, .. etc).

También puede ser que tu IP esté bloqueada (la de tu servidor SMTP .. o lo que use) por SPAM (hay sitios donde puedes consultar por tu IP de tu dominio si está clasificada como SPAM).

En otros casos .. a nivel de ser clasificado como "correo masivo" (SPAM) tu e-mail por ciertos proveedores se ocasiona por qué validan más estricto las cabeceras HTTP usadas .. En tu ejemplo usas pocas (las justas) para enviar tu e-mail .. hay muchas más que define el protocolo SMTP para temas de "identificación", "prioridad" y demás .. Parte de todo este protocolo SMTP lo implementa la classe:

PHP Mailer (http://phpmailer.sourceforge.net) que además tiene la ventaja de que puedes enviar los e-mail's directamente por SMTP e incluso usar vários Servidores SMTP para balancear la carga (repartir el trabajo de envio a N servidores SMTP) con lo cual ganas en velocidad de envio.

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 11:31.