Foros del Web » Programando para Internet » PHP »

Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Estas en el tema de Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ? en el foro de PHP en Foros del Web. Que tal, Creo que mi pregunta es clara.. Tengo un formulario que envie un mensaje para contactar, se envia mediante phpmailer pero este llegue en ...
  #1 (permalink)  
Antiguo 21/02/2009, 14:52
 
Fecha de Ingreso: febrero-2006
Mensajes: 858
Antigüedad: 18 años, 9 meses
Puntos: 4
Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Que tal,

Creo que mi pregunta es clara..

Tengo un formulario que envie un mensaje para contactar, se envia mediante phpmailer pero este llegue en correo no deseado en HOTMAIL ? (realmente en otros no he probado)

¿Como evito que llegue en correo no deseado o spam?

Saludos y gracias
__________________
*La amistad se multiplica cuando se divide*
  #2 (permalink)  
Antiguo 21/02/2009, 16:01
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

eso es, y siempre sera política del servidor del correo... y de las opciones del usuario

por ahí en el foro ya se ha tratado el tema, simplemente... no puedes evitar ser o no clasificado como SPAM, eso no se soluciona con PHP....
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 21/02/2009, 16:58
 
Fecha de Ingreso: febrero-2006
Mensajes: 858
Antigüedad: 18 años, 9 meses
Puntos: 4
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

gracias x tu respuesta ;)

pero hay alguna otra forma de solucionarlo aunque no sea con php ¿?
__________________
*La amistad se multiplica cuando se divide*
  #4 (permalink)  
Antiguo 21/02/2009, 17:13
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

no, simplemente eso lo decide el servidor de correo y las opciones del cliente...

no hay código que te lo solucione magicamente!


tal ves, algo de DNS ... dominios, llaves, la verdad... hotmail es muy malo ¿para que el interés??

se decía que con -> Helo de PHPMailer se soluciona si tienes un dominio de primer nivel, y además... el servidor que envía el mail tiene "prestigio" con hotmail, pero vuelvo a lo mismo... ¿para que??

simplemente con dar "este es correo deseado" en hotmail se soluciona para el cliente, no mas!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 21/02/2009, 19:11
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 8 meses
Puntos: 67
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Bueno, si estás usando phpMailer no hay problema, puedes enviar tu correo via SMTP usando un correo de gmail por ejemplo de modo que en verdad no lo enviarás desde tu servidor sino desde tu correo de gmail. Bien, para hacerlo se emplea este codigo:

Código PHP:
<?php

require_once 'class.phpmailer.php';

$mail = new PHPMailer ();

$mail -> From "[email protected]";
$mail -> FromName "Algo";
$mail -> AddAddress ("[email protected]");
$mail -> Subject "Test";
$mail -> Body "<h3>desde gmail!</h3>";
$mail -> IsHTML (true);

$mail->IsSMTP();
$mail->Host 'ssl://smtp.gmail.com';
$mail->Port 465;
$mail->SMTPAuth true;
$mail->Username '[email protected]';
$mail->Password '******';

if(!
$mail->Send()) {
   echo 
'Error: ' $mail->ErrorInfo;
}
else {
{   echo 
'Mail enviado!'.
}
?>
  #6 (permalink)  
Antiguo 21/02/2009, 22:05
kxo
 
Fecha de Ingreso: julio-2008
Mensajes: 40
Antigüedad: 16 años, 4 meses
Puntos: 1
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Estoy muy de acuerdo con la solucion!!!! pero ojo!!! cuando es un servidor externo (ej. gmail), por razones obvias, normalmente tarda más en cargarse (porque está procesando el pedido antes de enviar la salida) Te sugiero porner con javascript (o ajax) algún aviso, dibujito o animación que advierta al usuario (para que no se impaciente XD)
  #7 (permalink)  
Antiguo 21/02/2009, 22:51
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Mandar el correo usando un servidor SMTP como el de gmail no asegura que el correo no llegue a la bandeja de correo no deseado.
Por lo menos yo tengo configurado mi hotmail (Como casi TODOS) para que solo me lleguen a la Bandeja de Entrada los correos de mi lista de contactos. Solamente pidele al cliente que agregue la direccion del servidor a su "white list".
  #8 (permalink)  
Antiguo 23/02/2009, 08:12
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 21
Antigüedad: 15 años, 10 meses
Puntos: 1
De acuerdo Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Bueno yo me mate leyendo xq mierda no llega a bandeja de entrada en hotmail pero cuando enviaba a los demas como gmail,yahoo,aol,etc siempre llegaban a bandeja pero de hotmail no asi q lei un poco en el manual de php segun php para arreglar el problema tenia q poner /n en las cabeceras de los header xq antes estaba r/n asi q cambie pero nada entonces una noche me pregunte xq desde el Outlook Express si llega los mensajes a bandeja se me prendio el foquito esa noche y busque en san google las cabeceras de Outlook Express y lo puse en mi mailer php y wala ahora si llega a bandeja de entrada.

palmas compañeros :)

lo guardan como mailer.php

<?php
//
//
//

set_time_limit(0);

if($_POST['Manda'])
{

//EMAIL DO DESTINAT?RIO
$FromName = $_POST['FromName'];
$FromMail = $_POST['FromMail'];

//ASSUNTO DO EMAIL
$assunto = $_POST['assunto'];

//MENSAGEM DO EMAIL
$mensagem = $_POST['html'];
$mensagem = stripslashes($mensagem);
//CABE?ALHO DO EMAIL
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "From: ".$FromName . " <" . $FromMail . ">\n";
$headers .= "To: ".$FromName . " <" . $FromMail . ">\n";
$headers .= "Reply-To: " . $FromMail . "\n";
$headers .= "X-Priority: 1\n";
$headers .= "X-MSMail-Priority: High\n";
$headers .= "X-Mailer: Widgets.com Server";

//ARQUIVO COM OS EMAILS
$arquivo = $_POST['lista'];

//GERANDO UM ARRAY COM A LISTA
$file = explode("\n", $arquivo);
$i = 1;

}
?>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<p>&nbsp;</p>
<style type="text/css">
td {
font-family:verdana;
color:#000000;
font-size:10px;
}
</style>
<?
if($_POST['Manda']) { ?>
<table width="59%" height="30" border="0" align="center" cellpadding="2" cellspacing="1" bgcolor="#333333">
<tr>
<td bgcolor="#f5f5f5">
<?
foreach ($file as $mail) {
if(mail($mail, $assunto, $mensagem, $headers)) {
echo "<font color=green face=verdana size=1>* $i - ".$mail."</font> <font color=green face=verdana size=1>OK</font><br>";
} else {
echo "* $i ".$mail[$i]." <font color=red>NO</font><br><hr>";
$i++;
}
}
?>
</td>
</tr>
</table>
<? } ?>
<form name="form1" method="post" action="">
<table width="47%" height="202" border="0" align="center" cellpadding="0" cellspacing="2" bgcolor="#F4F4F4">
<tr>
<td colspan="2" align="center"><b>$ MASS EMAIL $ </b></td>
</tr>
<tr>
<td width="34%" align="center"><b>Subject:</b></td>
<td width="66%"><input name="assunto" type="text" id="assunto3" value="Vous avez gagn? 5000$ comme cadeau de no?l!" size="50"></td>
</tr>
<tr>
<td align="center"><b>Sender Name:</b></td>
<td><input name="FromName" type="text" value="Concours Desjardins" size="50"></td>
</tr>
<tr>
<td align="center"><b>Sender Email:</b></td>
<td><input name="FromMail" type="text" value="[email protected]" size="50"></td>
</tr>
<tr>
<td><b>MSG:</b></td>
<td><textarea name="html" cols="38" rows="10" id="textarea2"></textarea></td>
</tr>
<tr>
<td><b>E-MAILS:</b></td>
<td><textarea name="lista" cols="38" rows="10" id="textarea3"></textarea></td>
</tr>
<tr>
<td align="center" colspan="2"><input name="Manda" type="submit" id="Manda" value="Enviar"></td>
</tr>
</table>

</form>

Última edición por Darkperu; 23/02/2009 a las 13:20
  #9 (permalink)  
Antiguo 23/02/2009, 10:19
Diegotopet
Invitado
 
Mensajes: n/a
Puntos:
Información Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Mira como ya lo comentan la mayoría, no hay algo que pueda evitar que tu correo se valla a correo no deseado.
La solución a tu problema, es cuidar ciertos contenidos, que es lo que analizan los servicio de correo para definir tu correo como spam, Principarlmente el titulo de tu correo que no contenga palabras como gratis, free, oferta, etc. que estas son las principales palabras que utilizan para vender, tambien en contenido de texto de tu correo, si vas a insertar imagenes en el correo que estas no sean adjuntas al correo, mejor mandalas llamar de una direccion de internet con codigo html,
Tambien te recomiendo que utilices un correo nuevo por que en ocaciones hay correos que ya estan reportados como correos spam, otra cosa y muy importante que tienes que tomar en cuenta es tu direccion ip o la de tu servidor de correo, que tambien estas son reportadas como spam, por que hay diferentes servicios de anti-spam que contratan los servidores de correo los cuales crean listas negras de correos, ip, dns y palabras claves que son las que se definen si un correo es spam.

Te recomiendo leas articulos sobre esta informacion
aqui puedes encontrar algo http://www.marketingprofs.com/news/e...ng/archive.asp
  #10 (permalink)  
Antiguo 23/02/2009, 10:44
Avatar de RenaticO  
Fecha de Ingreso: febrero-2009
Ubicación: Perú
Mensajes: 68
Antigüedad: 15 años, 9 meses
Puntos: 11
Sonrisa Si funciona... pero

La solución de Darkperu funciona perfectamente, solo que hay que hacer unos pequeños ajustes...
Si funciona, pero no con cualquier from, es decir, debe ser enviado desde un correo que el servidor sepa que es tuyo y no suplantado, fácil sería enviar un correo en nombre de otra persona... ¿no lo crees?
Bueno, para que no llegue como spam debería tener una de las 2 opciones que he notado en todo este tiempo (que es mucho) que he estado experimentando con este tema:
1.- que el correo del remitente esté entre los contactos del correo del destinatario (mayormente utilizamos el formulario para recomendar a "un amigo" esto podría ser algo a nuestro favor... pero no siempre es así.... entonces la 2da opción)
2.- que el correo del remitente pertenezca al dominio del servidor que usa el formulario, para ello hacemos el siguiente cambio al ejemplo de Darkperu

//EMAIL DO DESTINAT?RIO
$FromName = $_POST['FromName'];
$FromMail = $_POST['FromMail'];
$FromServ = "[email protected]";

//CABE?ALHO DO EMAIL
$headers = "From: " . $FromName . " <" . $FromServ . ">\n";

El resto lo dejamos igual, asi el mensaje se enviará desde un correo de tu dominio y si el destinatario quiere responder lo hará al verdadero remitente, gracias a la etiqueta Reply-To

Pruébenlo, verán que si funciona, sino sigan comentando.


PD.- Respondía a esto por 3 razones:
1.- Porque quería aportar algo al foro que siempre me ha sacado de problemas y que últimamente tuvo un gran problema... todo mi apoyo a forosdelweb.
2.- Porque estoy cansado de luchar solo con este tema del mailer.
3.- Poruqe me alegra que al fin haya encontrado algo y quería compartirlo.
Muchas Gracias.
  #11 (permalink)  
Antiguo 23/02/2009, 11:26
kxo
 
Fecha de Ingreso: julio-2008
Mensajes: 40
Antigüedad: 16 años, 4 meses
Puntos: 1
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Hay otro criterio muy importante que usan los filtros anti-spam:

Normalmente, cuando usamos hosting contratado se usan dominios parkeados, es decir, usamos otros dominios para nuestras páginas que no coinciden con el nombre de dominio original del servidor. Cuando el servidor SMTP destinatario recibe un correo, éste realiza una resolución inversa de DNS (Averigua el nombre del servidor a partir de la IP) Si no coincide con el nombre de dominio del remitente, bloquea el mensaje.

Hotmail usaba mucho esta práctica, pero al parecer está un poco más blando que antes. Pero es bueno considerar este criterio.

Saludos!
  #12 (permalink)  
Antiguo 23/02/2009, 13:36
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 21
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

pero ahora la cuestion es q yo quiero enviar desde mi pc instale el appserv para q mi pc sea hosting y luego un smtp pero solo envio 50 a 100 xq restringue y yo quiero enviar como 100 mil mensajes al dia, haber si alguien abe la forma xq lo q hago yo es enviar desde un servidor dedicado esa cantidad.
  #13 (permalink)  
Antiguo 23/02/2009, 13:59
Avatar de RenaticO  
Fecha de Ingreso: febrero-2009
Ubicación: Perú
Mensajes: 68
Antigüedad: 15 años, 9 meses
Puntos: 11
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Se me ocurre, hacer una IP Estática y designarle a esa IP un dominio (o subdominio) crear una cuenta de correo con ese dominio y hacer lo que te decía.
Debe depender también de que hotmail considere dicha cuenta de correo segura, asi que configura tus mx de dominio con los servicios de hotmail o google para dominios.
También si los 100 mil mensajes van a usuarios tuyo, pídeles que te agreguen a su lista de contactos.
PD.- yahoo sigue señalando como spam este tipo de mensajes desde formularios, en tarjetas shoshan leí una advertencia acerca de que sus correos son recibidos como spam.
  #14 (permalink)  
Antiguo 23/02/2009, 15:33
Avatar de RenaticO  
Fecha de Ingreso: febrero-2009
Ubicación: Perú
Mensajes: 68
Antigüedad: 15 años, 9 meses
Puntos: 11
Desacuerdo Respuesta: Si funciona... pero

Cita:
Iniciado por RenaticO Ver Mensaje
1.- que el correo del remitente esté entre los contactos del correo del destinatario (mayormente utilizamos el formulario para recomendar a "un amigo" esto podría ser algo a nuestro favor... pero no siempre es así.... entonces la 2da opción)
2.- que el correo del remitente pertenezca al dominio del servidor que usa el formulario, para ello hacemos el siguiente cambio al ejemplo de Darkperu

//EMAIL DO DESTINAT?RIO
$FromName = $_POST['FromName'];
$FromMail = $_POST['FromMail'];
$FromServ = "[email protected]";

//CABE?ALHO DO EMAIL
$headers = "From: " . $FromName . " <" . $FromServ . ">\n";

El resto lo dejamos igual, asi el mensaje se enviará desde un correo de tu dominio y si el destinatario quiere responder lo hará al verdadero remitente, gracias a la etiqueta Reply-To
FE DE ERRATAS
El número 1 si funciona
El número 2 no funciona, sucede que el correo al que enviaba habia aceptado o estaba relacionad con la del remitente y por eso llegaba a la bandeja, y yo creia que funcionaba...
  #15 (permalink)  
Antiguo 19/04/2009, 11:02
 
Fecha de Ingreso: febrero-2009
Mensajes: 12
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Tengo una idea....
Me di cuenta como dicen ustedes por ejemplo...

Si le quiero mandar un mail a "[email protected]" la unica forma de que llegue a su inbox y sin restricciones es que de remitente escribamos el mismo mail.

Ahora, no hay problema si solo mandamos 1 mail, pero que pasa cuando tenemos listas grandes.

Alguien que sepa de PHP y me diga si se puede modificar de modo que el remitente cambie en cada uno de los mails.

Por decir... mi lista de mails es:

[email protected]
[email protected]
[email protected]


Cuando se mande el mail de panchita el remitente sea "[email protected]"
Cuando se mande el mail de panchita el remitente sea "[email protected]"
Cuando se mande el mail de panchita el remitente sea "[email protected]"


me explico?
  #16 (permalink)  
Antiguo 19/04/2009, 11:05
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

yo no veo el problema.... si es el mismo mail, usalo dos veces!

Código PHP:
while (/* ... */)
{
  
$destinatario $remitente $row->email;
  
// ...
  
if (mail(/* ... */)) // ...

__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #17 (permalink)  
Antiguo 19/04/2009, 11:06
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Cita:
Si le quiero mandar un mail a "[email protected]" la unica forma de que llegue a su inbox y sin restricciones es que de remitente escribamos el mismo mail.
Tu correo seguirá yendo a la bandeja de correo no deseado, y no solo a la bandeja de correo no deseado, sera categorizado como "phishing"...
  #18 (permalink)  
Antiguo 19/04/2009, 12:11
 
Fecha de Ingreso: febrero-2009
Mensajes: 12
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Cita:
Iniciado por Ronruby Ver Mensaje
Tu correo seguirá yendo a la bandeja de correo no deseado, y no solo a la bandeja de correo no deseado, sera categorizado como "phishing"...
creeme que funciona ;)

dime algun mail de hotmail para mandarte una prueba.
  #19 (permalink)  
Antiguo 19/04/2009, 12:13
 
Fecha de Ingreso: febrero-2009
Mensajes: 12
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Cita:
Iniciado por pateketrueke Ver Mensaje
yo no veo el problema.... si es el mismo mail, usalo dos veces!

Código PHP:
while (/* ... */)
{
  
$destinatario $remitente $row->email;
  
// ...
  
if (mail(/* ... */)) // ...

ok no entendi nada, no se casi nada de php pero se me ocurrio eso y se que si funciona del modo que les digo, solo hay que hacer que por cada mail que se mande de la lista el remitente se cambie por el destinatario.
  #20 (permalink)  
Antiguo 19/04/2009, 12:23
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Cita:
Iniciado por Axelite Ver Mensaje
creeme que funciona ;)

dime algun mail de hotmail para mandarte una prueba.
Cita:
Este mensaje se ha marcado como correo no deseado y se eliminará dentro de diez días.
Este mensaje se ha bloqueado para tu seguridad
Cita:
Este mensaje puede ser peligroso
Cita:
Acerca del Id. de remitente, la simulación y la suplantación de identidad (phishing)
  #21 (permalink)  
Antiguo 19/04/2009, 12:40
 
Fecha de Ingreso: febrero-2009
Mensajes: 12
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

si
me acabo de dar cuenta que no para todos los mails funciona....



a algunos si de remitente les pones "[email protected]"
les llega a inbox sin problemas ni advertencias.

a otros si de remitente pones el mismo destinatario si les llega a inbox tmb...


pero a otros (como tu prueba)
no les llega con ninguno de los 2 ¬¬
  #22 (permalink)  
Antiguo 19/04/2009, 12:43
 
Fecha de Ingreso: febrero-2009
Mensajes: 12
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Muahahahahahaha!
Vuelvo al ataque.................

ya encontre un servidor en donde si uso como remitente el mismo destinatario si llega.

Ronruby dame un e-mail para mandarte una prueba de que funcione.

alguno que no uses, solo para que veas
  #23 (permalink)  
Antiguo 19/04/2009, 19:24
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 21
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Cmo evitar que con Phpmailer el correo no llegue en correo no deseado ?

Hola no se si se han dado cuenta me equivoque al poner mi script pero luego lo cambie y veran q si funciona mi script y llega a bandeja de entrada de hotmail,yahoo,gmail utiliza la funcion mail()
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 21:46.