Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Mandar Correo con PHP

Estas en el tema de Mandar Correo con PHP en el foro de PHP en Foros del Web. Hola a todos, quiero mandar un correo mediante la clase phpmailer, he visto varios ejemplos, y tengo unas series de dudas, es necesario configurar algo ...
  #1 (permalink)  
Antiguo 21/03/2014, 07:25
Avatar de camarvi24  
Fecha de Ingreso: diciembre-2011
Ubicación: España
Mensajes: 74
Antigüedad: 12 años, 5 meses
Puntos: 1
Mandar Correo con PHP

Hola a todos, quiero mandar un correo mediante la clase phpmailer, he visto varios ejemplos, y tengo unas series de dudas, es necesario configurar algo en el php.ini, tengo que tener funcionando sendmail.

Ahora mismo no me funciona, me da un error, no puede conectar al servidor de correo (estoy utilizando una cuenta de gmail para hacer el envio).

Adjunto el codigo fuente.

require_once('class.phpmailer.php');
$mail = new PHPMailer(true);
$mail->IsSMTP();
// Vamos usar SMTP si pusiéramos IsMail() lo mandaría a través de la función mail()
try {
$mail->SMTPAuth = true;
// Habilitamos la autentificación por SMTP
$mail->SMTPSecure = "ssl";
// Usar SMTP seguro
$mail->Host = "smtp.gmail.com";
// Indicamos el servidor SMTP
$mail->Port = 465;
// Indicamos el puerto del servidor SMTP de Gmail
$mail->Username = "[email protected]";
// GMAIL uusuario
$mail->Password = "contraseña";
// GMAIL contraseña
$mail->AddReplyTo('[email protected]', 'Nombre Apellido');
$mail->AddAddress('[email protected]', 'Nombre Apellido');
$mail->SetFrom('[email protected]', 'Nombre Apellido');
$mail->Subject = 'Asunto del eMail que enviamos';
$mail->AltBody = 'Para leer este eMail necesita un cliente compatible';
// Mensaje opcional para los que no tengan clientes de eMail compatibles con HTML
$mail->MsgHTML(file_get_contents('contenido.html'));
// Solicitamos el contenido del fichero y ponemos como contenido HTML del eMail
$mail->AddAttachment('images/phpmailer.gif');
// Fichero adjunto al correo
$mail->Send();
// Enviamos el eMail
echo "Mensaje enviado correctamente";
} catch (phpmailerException $e) {
echo $e->errorMessage();
} catch (Exception $e) {
echo $e->getMessage();
}


Gracias.
  #2 (permalink)  
Antiguo 21/03/2014, 08:39
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Mandar Correo con PHP

revisa otros tutoriales para ver si 465 es el puerto de Gmail, no se si cambio, si es el correcto revisa entonces que no exista un proxy o firewall en la red que te bloquee la conexión
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 21/03/2014, 15:21
Avatar de camarvi24  
Fecha de Ingreso: diciembre-2011
Ubicación: España
Mensajes: 74
Antigüedad: 12 años, 5 meses
Puntos: 1
Respuesta: Mandar Correo con PHP

Hola ya he conseguido mandar correo, el problema no estaba en el puerto sino en el nombre del host.
Pongo la configuracion que he utilizado y me ha funcionado


$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "ssl"; // sets the prefix to the servier
$mail->Host = "smtp.googlemail.com"; // sets GMAIL as the SMTP server
$mail->Port = 465;

Etiquetas: correo, html
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 22:25.