Foros del Web » Programando para Internet » PHP » Configuración PHP »

php mail(QK SMTP/xampp) no funciona:(

Estas en el tema de php mail(QK SMTP/xampp) no funciona:( en el foro de Configuración PHP en Foros del Web. Hola , un saludo a todos!. Estoy intentando implementar la función mail de php pero no consigo que funcione. He estado indagando y no consigo ...
  #1 (permalink)  
Antiguo 28/01/2011, 12:43
 
Fecha de Ingreso: octubre-2010
Mensajes: 189
Antigüedad: 13 años, 6 meses
Puntos: 0
php mail(QK SMTP/xampp) no funciona:(

Hola , un saludo a todos!.

Estoy intentando implementar la función mail de php pero no consigo que funcione.
He estado indagando y no consigo ver donde está el fallo.

Este es mi código php:

Código PHP:
..
 
$mensaje=" $name,Hello. /n
           This is your password= $password./n
           You should clink on the next/n
           link in order to confirm your registration: /n
           http://www.myweb.com./n
           com/confirmar.php?codigo=$codigoverificacion;"



ini_set("SMTP","localhost");
ini_set("smtp_port","25"); 

$asunto"Confirmation of your registration to our website";
$headers  'MIME-Version: 1.0' "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' "\r\n";
$headers .= "From: Pepe<postmaster@localhost>\r\n"


mail($mail,$asunto,$mensaje,$headers);
if(
mail($mail,$asunto,$mensaje,$headers))

 echo 
"Se ha enviado un mensaje a tu correo electronico con el código de activación.";
}
else

echo 
"Ha ocurrido un error y no se puede enviar el correo"

.. 
Y estos son los mensajes de error que me aparecen:

(

Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in I:\xampp\htdocs\mail.php on line 1061

Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in I:\xampp\htdocs\mail.php on line 1062
Ha ocurrido un error y no se puede enviar el correo

)


La línea 1062 es la de if(mail(..
En la configuración php.ini tengo lo siguiente:


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

; For Win32 only.
; http://php.net/sendmail-from
;sendmail_from = postmaster@localhost


Estoy trabajando desde mi localhost.
Tengo instalado QK SMTP.
Alguna idea?

Un saludo!!
  #2 (permalink)  
Antiguo 28/01/2011, 13:35
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: php mail(QK SMTP/xampp) no funciona:(

Prueba que no tengas ningún firewall / antivirus que este bloqueando la comunicación al puerto 25, aunque este en tu localhost hay ciertos programas que pueden bloquearlo.

Saludos.
  #3 (permalink)  
Antiguo 28/01/2011, 15:33
 
Fecha de Ingreso: octubre-2010
Mensajes: 189
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: php mail(QK SMTP/xampp) no funciona:(

Gracias GatoV,

he comprobado que el puerto 25 no está bloqueado..

saludos
  #4 (permalink)  
Antiguo 28/01/2011, 18:12
 
Fecha de Ingreso: octubre-2010
Mensajes: 189
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: php mail(QK SMTP/xampp) no funciona:(

Hola de nuevo.

He hecho algunos cambios en mi script.
En lugar de $mail utlilizo $destino, y he quitado los ini_set, y ya no me da error.
Sin embargo no llegan los emails(he probado en tres cuentas de correo diferentes).

En el archivo QKserver. log me está indicando el error 10060 continuamente.
Esto es lo que dice google de dicho problema:

"
Gmail rechaza el correo cuando la dirección IP de envío no coincide con el dominio de envío a fin de evitar el spam. Para enviar correo desde tu servidor a Gmail, te sugerimos que utilices el relevo SMTP que te haya proporcionado el ISP. Ten en cuenta que no podemos crear una lista blanca de direcciones IP ni hacer excepciones en este momento."

No entiendo esto muy bien, ya que estoy trabajando desde localhost, xampp. ¿Porqué habría de ser la dirección de IP distinta qyue la del dominio?(No estoy trabajando con ningún dominio).
Con los mensajes enviados a yahoo me da el mismo error.
Y con los mensajes enviados a hotmail me dice esto:
"Hotmail does not relay dynamically-assigned IP ranges".
¿Significa todo esto que no se pueden enviar emails desde mi propio servidor si tengo una IP dinámica(que es lo habitual, creo yo)?
Bueno, y encima un mensaje si aparece como exitósamente enviado ( a gmail) pero no lo he recibido..

En fin, un lío todo esto.Por cierto, no sé si debería postear en otro foro GatorV, ya que igual se está saliendo esto del tema php.
Gracias por cualquier ayuda!, esto parece un callejon sin salida..

Saludos
  #5 (permalink)  
Antiguo 28/01/2011, 20:24
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: php mail(QK SMTP/xampp) no funciona:(

Pues ahí no vas a poder hacer mucho ya que como leiste, no puedes enviar mensajes desde IPs dinámicas, lo que vas a tener que hacer es probar tu script en un host que tenga habilitado el servicio de SMTP.

Saludos.
  #6 (permalink)  
Antiguo 29/01/2011, 16:15
 
Fecha de Ingreso: octubre-2010
Mensajes: 189
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: php mail(QK SMTP/xampp) no funciona:(

Gracias, GatorV

¿a lo mejor php mailer admite IP dinámicas?

Saludos
  #7 (permalink)  
Antiguo 30/01/2011, 22:31
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: php mail(QK SMTP/xampp) no funciona:(

El tema no es tanto de PHPMailer o la función mail() es el servidor que recibe el correo el que te impone esas reglas.

Saludos.
  #8 (permalink)  
Antiguo 31/01/2011, 10:25
 
Fecha de Ingreso: octubre-2010
Mensajes: 189
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: php mail(QK SMTP/xampp) no funciona:(

Hola, y gracias de nuevo.

Pero si yo trabajo con la función mail(), y envío los emails desde un SMTP instalado en mi ordenador, la IP emisora es la de mi ordenador, que en mi caso es dinámica.
Si yo trabajo con Php mailer envío los emails desde gmail( no sé si se puede hacer de otra manera), entonces la IP podría ser estática y así en mi caso enviarse los emails.

No sé si funciona así como digo, o me equivoco en algo.

Saludos!
  #9 (permalink)  
Antiguo 31/01/2011, 10:36
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: php mail(QK SMTP/xampp) no funciona:(

Exacto si lo haces así como indicas usando un SMTP Externo entonces sí puedes hacer lo que propones, ya que el que hace el envío es el servidor SMTP, también puedes usar un programa como miniRelay para usar un SMTP externo.

Saludos.
  #10 (permalink)  
Antiguo 31/01/2011, 11:15
 
Fecha de Ingreso: marzo-2008
Mensajes: 57
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: php mail(QK SMTP/xampp) no funciona:(

Hola,

Agradeceria si puedes introducir la opcion que comentas de usar un smtp externo, ya que me encuentro en la misma situacion que tu (bueno quizas un poco mejor)

A mi los mails enviados a gmail me llegan correctamente, a hotmail en correo no desado, pero llega pero en otros casos ya no llega (por ejemplo ya.com)

el codigo es:

<code>
$cuerpo = '
<html>
<head>
<title>Prueba de mail</title>
</head>
<body>
<h1>Hola!</h1>
<p>
<b>Espero que esto funcione</b>. respondeme al mail</p>
</body>
</html>
';

//para el envío en formato HTML
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

//dirección del remitente
$headers .= "From: Vertik <[email protected]>\r\n";


$resultado=imap_mail($destinatario,$asunto,$cuerpo ,$headers);

if ($resultado=='true')
{
echo "salio bien!";
}
else
{
echo "error al enviar el correo";
}
?>

</code>
  #11 (permalink)  
Antiguo 31/01/2011, 12:17
 
Fecha de Ingreso: octubre-2010
Mensajes: 189
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: php mail(QK SMTP/xampp) no funciona:(

Hola,

Gracias, GatorV, miraré la opción de miniRelay.
Me parece que phpmailer se usa mucho. Lo que pasa es que también he leído de bastantes personas que tienen algún problema en la instalación. Es por eso que yo quería seguir intentándolo con php mail.
Hola Vertik,
Si quieres usar php mailer con gmail(sigo pensando que no se puede usar de otra manera, no estoy seguro) en la cuenta de correo que tengas, o abras, vas al enlace "configuración" y allí al enlace correo y reenvio pop/imap. Aquí he recibido dos informacione distintas, una que dice que se habilite imap y la otra que dice que se habilite pop para todos los mensajes.
En el archivo de nuestro dominio ponemos una serie de scripts que circulan por ahí( tipo como con php mail).
Instalar phpmailer, claro, y no sé si algo más..
De la opción miniRelay no sé nada todavía.

Voy a intentar utilizar tu código Vertic. Supongo que estas trabajando desde xampp. Es tu IP dinámica también?.En la dirección del remitente, ¿se puede poner cualquier dirección?. La has cambiado también en php.ini?.
En fin, es que sigo pensando que tengo algo mal configurado. De hecho el código que tengo arriba tampoco me funcionaba en un hosting que se suponía que tenía SMTP.

Por cierto, lo de hotmail, debe ser bastante habitual( email a bandeja de correo no deseado).
Tengo entendido que una vez que el remitente acepta su email como correo deseado le llegan los siguientes bien. Y también creo que si utilizas un remitente muchas veces a la larga sus correos son más fácilmente aceptados( por que son reconocidos).

Saludos
  #12 (permalink)  
Antiguo 01/02/2011, 04:25
 
Fecha de Ingreso: marzo-2008
Mensajes: 57
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: php mail(QK SMTP/xampp) no funciona:(

Mirando el log (etc/mail) me he dado cuenta que es porque mi dominio del smtp no es valido (normal!!! estoy en local! seria la ostia)

Nos podeis orientar para poder usar un servidor smtp "real" ya sea nativo o usando uno externo?

Gracias!
  #13 (permalink)  
Antiguo 04/02/2011, 17:38
 
Fecha de Ingreso: octubre-2010
Mensajes: 189
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: php mail(QK SMTP/xampp) no funciona:(

Aleluya!!!

Bueno, quería decir que he instalado phpmailer y puedo enviar los emails!!!
Estoy hasta emocionao..=). Pues, nada, parece que esta opción es más recomendable, ya que te permite no depender de otros servidores.( y de enviar correo desde IP estáticas).

Gracias también a otros miembros de estos foros.
Al topar con este hilo conseguí que me saliera, despúes de varios intentos en vano:
http://www.forosdelweb.com/f18/phpma...o-25-a-656318/

Yuhuuu!.Saludos

Etiquetas: php
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:55.