Foros del Web » Programando para Internet » PHP »

Enviar correo a hotmail con php

Estas en el tema de Enviar correo a hotmail con php en el foro de PHP en Foros del Web. Estoy intentando generar un formulario de registro par auna pagina en php que tengo entre manos. El formulario en cuestion utiliza la funcion mail para ...
  #1 (permalink)  
Antiguo 06/04/2011, 06:41
 
Fecha de Ingreso: mayo-2010
Mensajes: 13
Antigüedad: 13 años, 11 meses
Puntos: 2
Enviar correo a hotmail con php

Estoy intentando generar un formulario de registro par auna pagina en php que tengo entre manos. El formulario en cuestion utiliza la funcion mail para enviar un correo de activacion al usuario. Mediante minirelay he conseguido que los correos llegen sin problemas a gmail, pero en cuanto toca hotmail no hay manera. Me sale el siguiente error:

Error DY-001 Unfortunately, messages from ***.***.***.*** weren't sent. Please contact your Internet service provider. You can tell them that Hotmail does not relay dynamically-assigned IP ranges. You can also refer your provider to http://mail.live.com/mail/troubleshooting.aspx#errors


Teniendo en cuenta que es bastante improvable que consiga una ip estatica me pregunto si existe otra manera de solucionar el problema.

Habia leido que usando un dominio y registros MX deberia solucionarse, pero hasta ahora nada, tengo un dominio (direcionado a mi ip) con un registro MX (aunque no tengo ni idea de si lo he configurado bien) y el siguiente codigo en mi php.ini


Código:
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = localhost
; http://php.net/smtp-port
smtp_port = 25

; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = [email protected]

; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
;sendmail_path =

; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =

; Add X-PHP-Originating-Script: that will include uid of the script followed by the filename
mail.add_x_header = On

; Log all mail() calls including the full path of the script, line #, to address and headers
;mail.log =
Ya no se que probar, asi que agradeceria cualquier tipo de ayuda.
  #2 (permalink)  
Antiguo 06/04/2011, 08:25
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 2 meses
Puntos: 96
Respuesta: Enviar correo a hotmail con php

Saludos

En el foro se encuentra el siguiente aporte por Escoffie Click Acá.
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #3 (permalink)  
Antiguo 06/04/2011, 13:27
 
Fecha de Ingreso: mayo-2010
Mensajes: 13
Antigüedad: 13 años, 11 meses
Puntos: 2
Respuesta: Enviar correo a hotmail con php

Nada. He probado unas cuantas cosas. Al final dejandolo asi (ver mas abajo) he conseguido que me los mande a gmail pero siguen sin llegar a hotmail.


Código PHP:
//Creamos la instancia de la clase PHPMailer y configuramos la cuenta
        
$mail=new PHPMailer();
        
$mail->Mailer="smtp";
        
$mail->Helo "www.midominio.com.mx"//Muy importante para que llegue a hotmail y otros
        
$mail->SMTPAuth=true;
        
$mail->Host="localhost";
        
$mail->Port=25
        
$mail->Username="admin";
        
$mail->Password="******";
        
$mail->From="[email protected]";
        
$mail->FromName="administrador";
        
$mail->Timeout=60;
        
$mail->IsHTML(true);
        
//Enviamos el correo
        
$mail->AddAddress($correo); //Puede ser Hotmail
        
$mail->Subject='Registro en midominio';
        
$mail->Body="<HTML>
                <HEAD>
                    <TITLE>REGISTRO EN midominio</TITLE>
                </HEAD>
                <BODY>
                    <P>Bienvenido</P>
                    <P>Gracias por registrarte en midominio.</P>
                    <P>Estos son tus datos de registro:<BR>
                        Usuario: "
$usuario .". Contraseña: "$con1 ."</P>
                    <P>Ahora mismo tu cuenta se encuentra inactiva, activala pinchando en este link: <BR>
                        http://www.midominio.com/paginas/activar.php?r="
.$reg[0].".</P>
                    <P>No borres este correo, te vendra bien conservarlo por si olvidas tus datos de registro.</P>
                </BODY>
            </HTML>"
;
        
$mail->AltBody="REGISTRO EN midominio
                                Bienvenido
                                Gracias por registrarte en midominio.
                                Estos son tus datos de registro:
                                    Usuario: "
$usuario .". Contraseña: "$con1 ."
                                Ahora mismo tu cuenta se encuentra inactiva, activala pinchando en este link:
                                    http://www.midominio.com/paginas/activar.php?r="
.$reg[0].".
                                No borres este correo, te vendra bien conservarlo por si olvidas tus datos de registro."
;
        
$exito $mail->Send();    
        
        
        if(
$exito)
        {
            
header("Location: registro_completo.html");
        } else {
            
header("Location: error_correo.html");
        } 
Con hotmail siempre obtengo el mismo error (copiado de l log del smtp):

Unfortunately, messages from miip weren't sent. Please contact your Internet service provider. You can tell them that Hotmail does not relay dynamically-assigned IP ranges. You can also refer your provider to http://mail.live.com/mail/troubleshooting.aspx#errors.
  #4 (permalink)  
Antiguo 06/04/2011, 15:39
 
Fecha de Ingreso: enero-2005
Ubicación: Salta - Argentina
Mensajes: 322
Antigüedad: 19 años, 3 meses
Puntos: 7
Respuesta: Enviar correo a hotmail con php

El problema esta en tu IP, segun parece hotmail no acepta direcciones IPs dinamicas, leete esta pagina:

http://mail.live.com/mail/troubleshooting.aspx#errors y exactamente el codigo de error: 550 DY-001 (alli se explica lo que te indico)

ahora, una consulta: porque no usas un servidor SMTP con una IP fija y listo para usar? de esa forma solo configuras los parametros y ya...
  #5 (permalink)  
Antiguo 06/04/2011, 16:36
 
Fecha de Ingreso: mayo-2010
Mensajes: 13
Antigüedad: 13 años, 11 meses
Puntos: 2
Respuesta: Enviar correo a hotmail con php

Ya lo habioa supuesto. Ahora mismo tengo el SMTP en casa, y ahi tengo Ip dinamica, como podria usar uno con ip fija?
  #6 (permalink)  
Antiguo 06/04/2011, 16:42
 
Fecha de Ingreso: enero-2005
Ubicación: Salta - Argentina
Mensajes: 322
Antigüedad: 19 años, 3 meses
Puntos: 7
Respuesta: Enviar correo a hotmail con php

Puedes hacerlo con un servicio de alojamiento web. Seguramente cunado subas tu aplicacion a un proveedor de aljamineto, todo esto ya te vendrá configurado...

sino, contratando un IP fijo a tu proveedor de internet (aunque no es lo mas recomendado)
  #7 (permalink)  
Antiguo 06/04/2011, 16:55
Avatar de luis010182  
Fecha de Ingreso: julio-2009
Ubicación: Argentina - Capital Federal
Mensajes: 382
Antigüedad: 14 años, 9 meses
Puntos: 27
Respuesta: Enviar correo a hotmail con php

probaste con http://www.no-ip.com/ podes crear un nombre de dominio, el cual apunta a la ip de tu maquina. Vos instalas un cliente que le avisa al no-ip cual es tu ip tu servidor cada determinada cantidad de tiempo, y el dominio que crea siempre apunta a tu servidor.
Yo lo probe con servidores web de prueba y funcionaba bien. no si si podras configurar el servidor mail, pero es una opcion.
  #8 (permalink)  
Antiguo 06/04/2011, 17:13
 
Fecha de Ingreso: enero-2005
Ubicación: Salta - Argentina
Mensajes: 322
Antigüedad: 19 años, 3 meses
Puntos: 7
Respuesta: Enviar correo a hotmail con php

Cita:
Iniciado por luis010182 Ver Mensaje
probaste con http://www.no-ip.com/ podes crear un nombre de dominio, el cual apunta a la ip de tu maquina. Vos instalas un cliente que le avisa al no-ip cual es tu ip tu servidor cada determinada cantidad de tiempo, y el dominio que crea siempre apunta a tu servidor.
Yo lo probe con servidores web de prueba y funcionaba bien. no si si podras configurar el servidor mail, pero es una opcion.
Tampoco servira, dado a que la IP de la maquina seguiria siendo dinamica y hotmail la bloquearia... (ese es el problema original)
  #9 (permalink)  
Antiguo 06/04/2011, 17:16
 
Fecha de Ingreso: mayo-2010
Mensajes: 13
Antigüedad: 13 años, 11 meses
Puntos: 2
Respuesta: Enviar correo a hotmail con php

Cita:
Iniciado por Netyco Ver Mensaje
Tampoco servira, dado a que la IP de la maquina seguiria siendo dinamica y hotmail la bloquearia... (ese es el problema original)
Sep, ademas ya tengo domino que apunta a mi IP dinamica. Buenos pues siendo ese el problema lo dejare de lado hasta que acabe la web y cuando lo suba a un hosting ya lidiare con ello. Muchas gracias por la ayuda.

Etiquetas: correo, hotmail
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 13:03.