PHP - No puedo enviar correos desde PHP

 
Vista:

No puedo enviar correos desde PHP

Publicado por Alex (3 intervenciones) el 12/10/2007 03:24:33
Hola a todos! Espero que me puedan ayudar con un problema que "no me deja dormir". He tratado de hacer un programa que pueda enviar un correo electrónico, sin embargo me entere de que tenía que tener un servidor SMTP para este propósito. Bueno, me enteré de varios servidores SMTP gratuitos (es solo para pruebas) y entre ellos conseguí los siguientes:
* 1st SMTP Server
* mini Relay
* Free SMTP Server (este no me gustó mucho ya que solo me permite enviar 10 mensajes por día)

Bueno, he probado con todos, pero ninguno me ha funcionado. Si utilizo el 1st SMTP Server, el programa me envía el sig. mensaje:

Warning: mail() [function.mail]: SMTP server response: 550 Invalid recipient: [email protected] in C:\AppServ\www\Control\pendientes.php on line

Y probando el puerto 25 (este servidor trae una opción para probarlo) me dice que no estoy conectado a Internet.

En el mini Relay, en la ventana me muestra lo sig.:

20:59:02 Comando: MAIL FROM <[email protected]>
20:59:02 Comando: RCPT TO <[email protected]>
20:59:02 [2] Dominio MX de hotmail.com cacheado
20:59:02 [2] Conectando con hotmail.com
20:59:08 [2] Error Connect timed out.

Y no lo puede mandar, y lo mismo con el Free SMTP Server.

Uno de los problemas que quisiera resolver sería el com verificar que este puerto esta habilitado.

Por ahí me dijeron que era posible que el Firewall de Windows me lo esté bloqueando, sin embargo no esta habilitado al momento de hacer las pruebas. También me comentaron que podría ser por el Router Inalámbrico, pero el Firewall también está desactivado.

Ya no sé que hacer para poder realizar esto. Cabe mencionar que ya tengo modificado mi archivo PHP.ini. Una pregunta ¿En el apartado SENDMAIL_FROM= debe ir un correo real (por ejemplo, alguno de yahoo o hotmail)?

Por eso me gustaría saber si alguno de ustedes sabe paso a paso como configurar un servidor SMTP y como enviar correos desde PHP, porque yo lo he intentado todo y no sale nada.

Bueno, muchas gracias por su atención y espero que me puedan ayudar, porque ya no sé que hacer! Muchas muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:No puedo enviar correos desde PHP

Publicado por Diego Romero (1450 intervenciones) el 12/10/2007 06:52:53
Por lo que veo estás tratando con servidores SMTP externos. No te preocupes por lo del puerto 25, está funcionando bien ya que de otro modo ni siquiera verías los mensajes de error que estás viendo.

Sí, SENDMAIL_FROM debe tener un correo real y válido.

Yo no uso la función mail(); por ser engorrosa de usar y tiene todos estos problemas que estás teniendo tú en Windows. En cambio uso Swift PHP Mailer que no necesita un servidor SMTP, basta con que tengas una cuenta de correo válida y funcional en cualquier servidor SMTP, el de tu propio ISP por ejemplo. Además es mucho más facil armar los correos, no tienes que preocuparte por las cabeceras ni nada de eso.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:No puedo enviar correos desde PHP

Publicado por Alex (3 intervenciones) el 12/10/2007 16:55:36
Hola! Muchas gracias DIego Romero, voy a probar! Lo que me gustaría preguntarte es entonces qué función puedo o debo utilizar con esta libreria Switf!? Muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:No puedo enviar correos desde PHP

Publicado por Diego Romero (1450 intervenciones) el 12/10/2007 20:06:40
No es una función, son varias. En el sitio de Swift tienes ejemplos para todos los gustos: http://www.swiftmailer.org/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:No puedo enviar correos desde PHP

Publicado por Alex (3 intervenciones) el 13/10/2007 03:24:06
Hola Diego Romero (y todos los que puedan ayudar!!! :'( ) Pues hice una prueba con el Switf y no mando el mensaje! Creo que me falta especificar que no utilizo un servidor SMTP de alguna página, sino que estoy probando enviar correos desde mi máquina (el localhost es el servidor). Me empiezo a desesperar de que todas las cosas que he hecho no han funcionado. Espero poder resolverlo! muchas gracias!

Hago la prueba básica que dice en la página con estos datos:

//Load in the files we'll need
require_once "lib/Swift.php";
require_once "lib/Swift/Connection/SMTP.php";

//Start Swift
$swift =& new Swift(new Swift_Connection_SMTP("localhost"));

//Create the message
$message =& new Swift_Message("My subject", "My body");

//Now check if Swift actually sends it
if ($swift->send($message, "[email protected]", "[email protected]")) echo "Sent";
else echo "Failed";

Y me envía el siguiente error:

Fatal error: Uncaught exception 'Swift_ConnectionException' with message 'The SMTP connection failed to start [localhost:25]: fsockopen returned Error Number 10060 and Error String 'Se produjo un error durante el intento de conexi�n ya que la parte conectada no respondi� adecuadamente tras un periodo de tiempo, o bien se produjo un error en la conexi�n establecida ya que el host conectado no ha podido responder. '' in C:\AppServ\www\Prueba\lib\Swift\Connection\SMTP.php:309 Stack trace: #0 C:\AppServ\www\Prueba\lib\Swift.php(216): Swift_Connection_SMTP->start() #1 C:\AppServ\www\Prueba\lib\Swift.php(101): Swift->connect() #2 C:\AppServ\www\Prueba\index.php(15): Swift->__construct(Object(Swift_Connection_SMTP)) #3 {main} thrown in C:\AppServ\www\Prueba\lib\Swift\Connection\SMTP.php on line 309

No sé qué hacer! Bueno, muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:No puedo enviar correos desde PHP

Publicado por Diego Romero (1450 intervenciones) el 13/10/2007 19:46:29
Me parece que fui claro (y la documentación de Swift así lo especifica) que necesitas una cuenta en un servidor SMTP y por supuesto debes decirle a Swift la dirección del servidor, tu nombre de usuario y tu contraseña en él.
Eso es lo que te falta en el script que has posteado.
Dentro de la documentación hay un ejemplo de cómo usar Gmail como servidor de SMTP, búscalo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:No puedo enviar correos desde PHP

Publicado por Diego Romero (1450 intervenciones) el 13/10/2007 19:53:01
Para tu caso debe ser algo así:

$swift =& new Swift(new Swift_Connection_SMTP("smtp.gmail.com", SWIFT_SMTP_PORT_SECURE, SWIFT_SMTP_ENC_TLS));
$smtp->setUsername("user");
$smtp->setpassword("pass");
$message =& new Swift_Message("My subject", "My body");
if ($swift->send($message, "[email protected]", "[email protected]")) echo "Sent";
else echo "Failed";
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:No puedo enviar correos desde PHP

Publicado por ju (1 intervención) el 19/10/2007 02:19:56
nadie le ha contestado?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:No puedo enviar correos desde PHP

Publicado por mariel (1 intervención) el 30/09/2010 00:34:32
help me
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar