ENVIAR CORREO AUTENTICANDO CON PHPMailer
Este ejemplo compacto contiene form y PHP, es conveniente por seguridad separarlo en dos
archivos o realizarlo por AJAX.
El primer if detecta si se han posteado variables, si no se carga el formulario.
Si se reentra con los campos llenos se pasa al else y se corre el programa.
Primero se rellena curpo con html y las variables posteadas que se recogen con
$HTTP_POST_VARS luego se parametriza headers,
donde ponemos FROM, REPLY-TO, codificación etc.
Finalmente debemos incluir a
PHPMailerAutoload.php y junto a este
archivo tener a
class.phpmailer.php y class.smtp.phpluego en el código
queda explicado cada parámetro.
Para obtenerlos
click aquí
<?php
if (!$_POST){
?>
<form name="form1" method="POST" action="consulta.php" >
<input name="Nombre" id="Nombre" type="text" value="" size="35">
<input name="te" id="te" type="text" size="30">
<input name="Email" id="Email2" type="text" size="30">
<textarea name="cont" cols="30" rows="4"></textarea>
<input type="Submit" name="Submit2" value="Enviar">
<input name="Submit" type="reset" value="cancelar">
</form>
<?php
}else{
$cuerpo = "Formulario de consulta enviado desde xxx.com.ar<br><br>";
$cuerpo .= "Nombre: " . $_POST["Nombre"] . "<br>";
$cuerpo .= "Teléfono: " . $_POST["te"] . "<br>";
$cuerpo .= "Email: " . $_POST["Email"] . "<br>";
$cuerpo .= "Consulta: " . $_POST["cont"] . "<br>";
require '../scripts/PHPMailerAutoload.php';
$mail = new PHPMailer(); // inicializo Mailer
$mail->IsSMTP(); //setea para smtp
$mail->SMTPAuth = true; // activa la autenticacion smtp
$mail->Host = "mail.miweb.com.ar"; // setea el servidor smtp
$mail->Port = 25; // setea el puerto 25
$mail->Username = "nombredeusuario"; //usuario de la cuenta envios@miweb.com.ar
$mail->Password = "mipassword"; //password de la cuenta envios@miweb.com.ar
//$mail->SMTPSecure = 'tls'; // Activa encriptado TLS
//$mail->SMTPSecure = 'ssl'; // Activa encriptado SSL , elijo uno de los dos
// parametrizo mi mail
$mail->SetFrom('envios@miweb.com.ar', 'MIWEB'); // primero mail luego alias
$mail->AddAddress('webmaster@miweb.com.ar', 'MI NOMBRE'); // me agrego si quiero copia que vean los destinatarios
//$mail->addAddress('juan@ejemplo.net', 'Juan'); // Agregar destinatarios
//$mail->addAddress('diana@otroejemplo.com'); // El nombre es opcional
//$mail->addReplyTo('info@miweb.com', 'respuesta a este mail'); // mail de respuesta
//$mail->addCC('cc@otroejemplomas.com'); //Agrega copia
$mail->addBCC('soporte@loquesea.com.ar', 'SOPORTE'); //Agrega copia oculta
//$mail->addAttachment('/var/tmp/archivo.zip'); // Agrega adjuntos
//$mail->addAttachment('/tmp/image.jpg', 'Nueva.jpg'); // Agrega imagen, el nombre es opcional
$mail->isHTML(true); // setea HTML
$mail->Subject = "Aca pongo el asunto"; // carga el asunto
$mail->Body = $cuerpo; //carga el cuerpo del mail
//$mail->AltBody = 'opcional cuerpo en texto llano para clientes sin HTML';
// envio el mail
if($mail->Send()) {
//bloque de código con éxito
} else {
//bloque de código con error
}
?>
<div>Aquí termina la página</div>
No hay ejemplo de este código