En este tutorial utilizaremos la librería PHPMailer para enviar correo electrónico utilizando el servidor de GMail de Google a cualquier otro servidor de correo.
Necesitamos
– Una cuenta de correo en GMail
– Una cuenta de correo en Hotmail
– Un servidor web,(en este ejemplo utilizaremos appserv en Windows así que realizaremos unos pasos adicionales )
– La librería PHPMailer
– Un editor de texto y conocimientos sobre PHP POO
Comencemos
Como trabajaremos sobre windows, debemos realizar algunos cambios en la configuración de AppServ.
PHPmailer y GMail hacen uso del protocolo SSL (Secure Sockets Layer – capa de conexión segura) para la protección de datos, entonces debemos habilitar este protocolo en appserver. Los pasos son:
1. Detener el servicio de Apache (Control Server by Service – Apache Stop)
2. Abrir con un editor de texto el archivo php.ini hubicado en c:\ -> windows -> php.ini, buscar la opción:
;extension=php_openssl.dll
eliminar el punto y coma «;» y guardar los cambios.
3. Ahora debes dirigirte a la carpeta donde tienes instalado appserv «c:\AppServ\php5\» y copiar los archivos libeay32.dll y ssleay32.dll para pegarlos en la carpeta «c:\AppServ\Apache2.2\bin», te pide autorización para sobrescribir los archivos, le dices que si.
4. Para terminar vuelve a levantar el servicio de Apache (Control Server by Service – Apache Start)
Con estos pasos ya tendremos habilitado la opción SSL en nuestro AppServ, para ver que todo está bien puedes dirigirte a la información de php desde el navegador
Utilizando PHPMailer
Para poder utilizar la librería PHPMailer, descomprime los archivos en c:\AppServ\www\PHPMailer-master\, crea un archivo PHP llamado email.php en esa misma carpeta con cualquier editor de texto.
Utilizando la POO extenderemos la clase PHPMailer de la siguiente forma:
<?php require 'class.phpmailer.php'; /** * Clase email que se extiende de PHPMailer */ class email extends PHPMailer{ //datos de remitente var $tu_email = 'remitente@gmail.com'; var $tu_nombre = 'Osama Bin Laden'; var $tu_password ='*******'; /** * Constructor de clase */ public function __construct() { //configuracion general $this->IsSMTP(); // protocolo de transferencia de correo $this->Host = 'smtp.gmail.com'; // Servidor GMAIL $this->Port = 465; //puerto $this->SMTPAuth = true; // Habilitar la autenticación SMTP $this->Username = $this->tu_email; $this->Password = $this->tu_password; $this->SMTPSecure = 'ssl'; //habilita la encriptacion SSL //remitente $this->From = $this->tu_email; $this->FromName = $this->tu_nombre; } /** * Metodo encargado del envio del e-mail */ public function enviar( $para, $nombre, $titulo , $contenido) { $this->AddAddress( $para , $nombre ); // Correo y nombre a quien se envia $this->WordWrap = 50; // Ajuste de texto $this->IsHTML(true); //establece formato HTML para el contenido $this->Subject =$titulo; $this->Body = $contenido; //contenido con etiquetas HTML $this->AltBody = strip_tags($contenido); //Contenido para servidores que no aceptan HTML //envio de e-mail y retorno de resultado return $this->Send() ; } }//--> fin clase /* == se emplea la clase email == */ $contenido_html = '<p>Hola, me llamo <em><strong>jc-mouse</strong></em> y quiero hacer una pregunta. </p> <p>¿POR QUE QUEREIS MATAR A BIN LADEN, SI "OS<em><strong>AMA</strong></em>" ?</p> <p><strong>:)</strong></p>'; $email = new email(); if ( $email->enviar( 'destinatario@hotmail.com' , 'Barack Obama' , 'Tengo una pregunta' , $contenido_html ) ) echo 'Mensaje enviado'; else { echo 'El mensaje no se pudo enviar '; $email->ErrorInfo; } ?>
Podemos ver que al inicio de la clase declaramos nuestro correo electrónico, ademas del password y nombre de usuario, en el constructor de clase realizamos las configuraciones básicas y necesarias para conectarnos al servidor SMTP de GMail , tenemos también un método para «enviar» nuestro correo.
Al final implementamos clase email.php indicando el correo de hotmail a quien enviar junto al nombre del destinatario, titulo del mensaje, y contenido.
Ejecuta desde el navegador http:\\localhost\PHPMailer-master\email.php y si no tenemos ningún error, el mensaje será enviado en unos segundos.
FIN o.O
Dando respuesta a una interrogante sobre el como crear objetos en tiempo de ejecución y como manipular estos, desarrolle[...]
Una cola doblemente terminada o deque es una estructura de datos lineal que permite insertar y eliminar elementos por am[...]
EL patrón MVC (Model, View, Controller) o Modelo, Vista Controlador, es un tipo de diseño que separa en capas bien defin[...]
Hace tiempo pidieron un video tutorial sobre como crear sus propios componentes swing java, lamentablemente debo decir q[...]
Por lo general se usan transacciones a nivel base de datos y posteriormente se llaman estos a través de procedimientos a[...]
En este tutorial crearemos una aplicación android que nos permitirá abrir un PopupMenu de donde podremos seleccionar una[...]