Foros del Web » Programando para Internet » PHP »

mail() no me funciona hacia Yahoo!

Estas en el tema de mail() no me funciona hacia Yahoo! en el foro de PHP en Foros del Web. Amigos: tengo problemas multiples al intentar enviar contraseñas a los usuarios de mis webs. * A Gmail......llegan perfactamente los correos. * A MSN me llegan ...
  #1 (permalink)  
Antiguo 14/02/2010, 11:10
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Pregunta mail() no me funciona hacia Yahoo!

Amigos: tengo problemas multiples al intentar enviar contraseñas a los usuarios de mis webs.

* A Gmail......llegan perfactamente los correos.

* A MSN me llegan en la bandeja de correo "no deseado"

* A Yahoo! no me llegan !!!

A ver si me pueden orientar porque hay mucha informacion dando vueltas pero no se hoy por hoy exactamente que es lo que hay que hacer para superar estos problemas. El codigo que uso es mas o menos asi:

Código PHP:
<?
$from       
'user@domain';
$to         '[email protected]'//
$subject    "Tema xxx;
$msg        = "
Hola fulanito! <p/>aca tus datos,..bl bla bla<p/> ...";

$headers  = 'MIME-Version: 1.0' . "
rn";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "
rn";

$headers .= "
From$from" . "rn";

$e = mail($to, $subject, $msg, $headers);

?>

Gracias desde ya!!!!!!
__________________
Salu2!
  #2 (permalink)  
Antiguo 14/02/2010, 11:26
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: mail() no me funciona hacia Yahoo!

eso no es problema de PHP, vamos... PHP solo se encarga de pasar la información al servidor SMTP, si llegan o no... no es cuestión de programación, es problema meramente del SMTP

osea que no existe alguna solución lógica vía código... (:
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 14/02/2010, 11:36
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: mail() no me funciona hacia Yahoo!

Pate: hola! me referia a alguna funcion o clase que me permita hacer autenticacion del SMTP,... asi solucionaria lo de Yahoo... (quizas)

Si no,......que opciones tengo?
__________________
Salu2!
  #4 (permalink)  
Antiguo 14/02/2010, 11:41
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: mail() no me funciona hacia Yahoo!

Cita:
Iniciado por Italico76 Ver Mensaje
Pate: hola! me referia a alguna funcion o clase que me permita hacer autenticacion del SMTP,... asi solucionaria lo de Yahoo... (quizas)

Si no,......que opciones tengo?
pues puedes intentar con el clásico: PHPMailer
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 14/02/2010, 11:42
Avatar de Gulinaidas  
Fecha de Ingreso: febrero-2010
Ubicación: La Plata, ARG
Mensajes: 88
Antigüedad: 14 años, 2 meses
Puntos: 1
Respuesta: mail() no me funciona hacia Yahoo!

Fijate descargando la clase PHPMailer.....y proba como t funciona esto...

Código PHP:
require("../Recursos/PHPMailer_v2.0.4/class.phpmailer.php");
    
            
$mail = new PHPMailer();
            
            
$mail->IsSMTP();
            
$mail->SMTPAuth true;
            
$mail->Host "smtp.serviciosmedicosenlinea.com"// SMTP a utilizar. Por ej. smtp.elserver.com
            
$mail->Username "[email protected]"// Correo completo a utilizar
            
$mail->Password "123123"// Contraseña
            
$mail->Port 2525// Puerto a utilizar
            
            
$mail->From "[email protected]";
            
$mail->FromName "ADMIN";
            
            
$mail->AddAddress($mailDireccion); // Esta es la dirección a donde enviamos
            
$mail->IsHTML(true); // El correo se envía como HTML
            
$mail->Subject "TITULO"// Este es el titulo del email.
            
$body "<h2>WELCOME</h2><br /><br /> (lo q quieras poner)";
            
            
$mail->Body $body// Mensaje a enviar
            
            
$exito $mail->Send(); // Envía el correo 
  #6 (permalink)  
Antiguo 16/02/2010, 12:07
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: mail() no me funciona hacia Yahoo!

Gulinaidas: gracias pero no me ha servido

Ni con mail() ni con PHPmailer puedo enviar a Yahoo! ni siquiera habiado habilitado autenticacion SPF (o era SFP?) para mis dominios
__________________
Salu2!
  #7 (permalink)  
Antiguo 16/02/2010, 12:40
 
Fecha de Ingreso: julio-2009
Mensajes: 66
Antigüedad: 14 años, 9 meses
Puntos: 1
Respuesta: mail() no me funciona hacia Yahoo!

Bien ha de estar blacklisteado tu SMTP, checalo, a mi me paso algo similar pero con el admin de mi hosting lo reparamos.
  #8 (permalink)  
Antiguo 16/02/2010, 13:58
 
Fecha de Ingreso: noviembre-2004
Ubicación: NULL
Mensajes: 652
Antigüedad: 19 años, 4 meses
Puntos: 6
Respuesta: mail() no me funciona hacia Yahoo!

Hola Italico


Usa esto AQUI llega a la bandeja de entra de gmail, hotmail, yahoo. etc...
  #9 (permalink)  
Antiguo 16/02/2010, 15:10
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Topcat y demas amigos: mi hosting me confirmó que estan en una "lista negra" y me sugirieron use Gmail con Google Applications y me dieron unas instrucciones..... que estoy tratando de seguir

He configurado todo viendo ejemplos pero sigue SIN funcionar en el sentido de que a MSN llega como basura y Yahoo no llega

Código PHP:
<?php
// para Gmail

require 'path/class.phpmailer.php';

try {
    
$mail = new PHPMailer(true); //New instance, with exceptions enabled
    
    
$body             "Mensaje inicial para ver como funka la clase phpmailer";        
    
$body             preg_replace('/\\\\/',''$body); //Strip backslashes

    
$mail->IsSMTP();                          
    
$mail->SMTPAuth   true;               
    
$mail->Port       465;                   // antes 25
    
$mail->Mailer "smtp";                  // agregada 
    
$mail->Host       "ssl://smtp.gmail.com";        // antes "localhost"
    
$mail->Username   "aaa";            
    
$mail->Password   "*****";              

    
$mail->IsSendmail();  // tell the class to use Sendmail

    
$mail->AddReplyTo("[email protected]","directorio");

    
$mail->From       "[email protected]";
    
$mail->FromName   "directorio";

    
$to "[email protected]";

    
$mail->AddAddress($to);

    
$mail->Subject  "Como estas amigo";

    
$mail->AltBody    "To view the message, please use an HTML compatible email viewer!"// optional, comment out and test
    
$mail->WordWrap   80// set word wrap

    
$mail->MsgHTML($body);

    
$mail->IsHTML(true); // send as HTML

    
$mail->Send();
    echo 
'Message has been sent.';
} catch (
phpmailerException $e) {
    echo 
$e->errorMessage();
}
?>
He puesto bien todas las entradas MX a los DNSs.. será que puede tardar ??? sera eso ?? o me falta algo en el script ?

Cita:
Hello,

Many e-mail providers such as Hotmail, AOL, Yahoo and most others use aggressive spam filtering technology, this technology has a higher rate of blocking genuine non-spam e-mail from sites or e-mail accounts on a shared-hosting server.

There are many reasons why an ISP or provider may block, flag or filter genuine e-mail and often, there is nothing you as the sender or we as the host can do to prevent this from occurring.

(...)

What is a site owner to do?

The best known and most highly recommended solution is to dispatch your e-mails through a third-party provider such as Google which has a higher probability of being received than any other provider.

E-mails received by Yahoo, AOL or Hotmail from Google are less likely to encounter a high filter rate as Google is considered a trusted provider and sender to each of these services and smaller providers or self-hosted services just cannot obtain the same level of trust and quality of e-mail delivery as Google.

How do you get started?

1) Create a Google Apps for Domains Standard account: http://google.com/a

2) Verify your account with Google

3) To set the MX records simply do the following...

- Login to cPanel
- Click on MX Entry next to the domain you are changing
- Remove any existing MX records for your domain
- Add ASPMX.L.GOOGLE.COM
- Set the Priority to 10
- Save it and that's it :)

4) Create your e-mail accounts with Google Apps and refer to Google Apps help documentation for assistance

5) Configure a special Gmail account (eg: noreply) for sending via scripts and enable it to send via POP/SMTP (help: http://tinyurl.com/popaccess)

6) Next in your script you would configure it for the following configuration or similar:

Use SMTP Server for E-mail: Yes
SMTP Server Address: ssl://smtp.gmail.com
SMTP Server Port: 465
Authentication Method: PLAIN
SMTP username: [email protected] (replace example.com with your Google Apps domain)
SMTP password: [Your E-mail Account password]


That's it really, in those six steps you have switched to Google Apps, created your e-mail accounts and learned how to send e-mail through Google Apps from your website scripts :)

Regards,
Support
pilucho: gracias.......voy a ver que son esos scripts

Aguien sabe que significa esto y como modifica el script (llamada a metodos)

Cita:
Authentication Method: PLAIN
__________________
Salu2!

Última edición por Italico76; 16/02/2010 a las 18:42
  #10 (permalink)  
Antiguo 16/02/2010, 16:54
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: mail() no me funciona hacia Yahoo!

Perfecto el script....... al menos hasta ahora OK

gracias!

PD: me habia faltado marcar "Enable SSL" en Google Apps :)
__________________
Salu2!
  #11 (permalink)  
Antiguo 16/02/2010, 16:55
 
Fecha de Ingreso: noviembre-2004
Ubicación: NULL
Mensajes: 652
Antigüedad: 19 años, 4 meses
Puntos: 6
Respuesta: mail() no me funciona hacia Yahoo!

eso es solo para verificar el correo

prueba asi

Código PHP:


<?php 
// para Gmail 
require 'path/class.phpmailer.php'
$mail = new PHPMailer(true);
$mail->IsSMTP(); 
try { 
    
$body             "Mensaje inicial para ver como funka la clase phpmailer";         
    
$body             preg_replace('/\\\\/',''$body); // barras invertidas
    
      
$mail->Host       "mail.TuPaginaWeb.com"
     
$mail->SMTPDebug  2;                  
     
$mail->SMTPAuth   true;                  
     
$mail->SMTPSecure "tls";               
     
$mail->Host       "smtp.gmail.com";      
     
$mail->Port       465;                   
     
$mail->Username   "[email protected]";  // Tu correo Gmail
     
$mail->Password   "TuClave";            // Tu Clave Gmail

    
$mail->AddReplyTo("[email protected]","directorio"); 
    
$mail->From       "[email protected]"
    
$mail->FromName   "directorio"
    
$to "[email protected]"
    
$mail->AddAddress($to); 
    
$mail->Subject  "Como estas amigo"
    
$mail->AltBody    "Para ver el mensaje, por favor, utilice un visor de correo electrónico compatible con HTML!"
    
$mail->MsgHTML($body); 
    
$mail->IsHTML(true); // Enviar como HTML
    
$mail->Send(); 
    echo 
'El mensaje ha sido enviado.'
} catch (
phpmailerException $e) { 
    echo 
$e->errorMessage(); 

?>
  #12 (permalink)  
Antiguo 16/02/2010, 18:41
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: mail() no me funciona hacia Yahoo!

Cita:
Iniciado por pilucho Ver Mensaje
eso es solo para verificar el correo
amigo....gracias.. pero no entiendo porque dices que sirve solo para verificar el correo (?)

Habia leido algo sobre usar TLS para autenticar pero asi no me funciona:

Cita:
SMTP -> FROM SERVER:
SMTP -> FROM SERVER:
SMTP -> ERROR: EHLO not accepted from server:
SMTP -> FROM SERVER:
SMTP -> ERROR: HELO not accepted from server:
SMTP -> NOTICE: EOF caught while checking if connectedLanguage string failed to load: tls
Seguro que como lo dejé al script.... no me servirá ? gracias x tu ayuda

PD: edita donde por accidente dejé el mail que copiastes..... por el tema que ya sabes ;)

Código PHP:
$to "[email protected]
__________________
Salu2!

Etiquetas: mail, yahoo
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 23:03.