Ver Mensaje Individual
  #5 (permalink)  
Antiguo 09/05/2011, 10:39
Avatar de Uncontroled_Duck
Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 13 años
Puntos: 261
Respuesta: Enviar datos de registro al correo

Entonces te pongo la info y así está para otro que la busque.

PHPmailer:
[URL="http://www.box.net/public/djjtro6oii"]Descargar los archivos[/URL]
[URL="http://www.programacion.com/articulo/uso_de_la_clase_phpmailer_213"]Aquí hay mas info sobre esto.[/URL]

- Este sería un archivo básico bastante completo como base para enviar emails con esta clase.
- Al cargarlo, envía el contenido automáticamente.
- Si lo que quieres es enviar los datos de un formulario, tienes que crear un archivo donde esta el formulario a rellenar.
- Y aquí cambiar algunas variables por las que recibirán la info por $_POST.
Código PHP:
<?php
  
// primero hay que incluir la clase phpmailer para poder instanciar
  //un objeto de la misma
  
require "includes/class.phpmailer.php";

  
//instanciamos un objeto de la clase phpmailer al que llamamos 
  //por ejemplo mail
  
$mail = new PHPMailer();

  
//Definimos las propiedades y llamamos a los métodos 
  //correspondientes del objeto mail

  //Con PluginDir le indicamos a la clase phpmailer donde se 
  //encuentra la clase smtp que como he comentado al principio de 
  //este ejemplo va a estar en el subdirectorio includes
  
$mail->PluginDir "includes/";

  
//Con la propiedad Mailer le indicamos que vamos a usar un 
  //servidor smtp
  
$mail->Mailer "smtp";

  
//Asignamos a Host el nombre de nuestro servidor smtp
  
$mail->Host "mail.tudominio.es";
  
$mail->Port 587;

  
//Le indicamos que el servidor smtp requiere autenticación
  
$mail->SMTPAuth true;

  
//Le decimos cual es nuestro nombre de usuario y password
  
$mail->Username "usuario"
  
$mail->Password "password";

  
//Indicamos cual es nuestra dirección de correo y el nombre que 
  //queremos que vea el usuario que lee nuestro correo
  
$mail->From "[email protected]";
  
$mail->FromName "Mi Nombre";

  
//el valor por defecto 10 de Timeout es un poco escaso dado que voy a usar 
  //una cuenta gratuita, por tanto lo pongo a 30  
  
$mail->Timeout=10;

  
//Indicamos cual es la dirección del destinatario del correo
  
$mail->AddAddress("[email protected]"); // Destinatario
  
$mail->AddCC("[email protected]"); // CC
  
$mail->AddBCC("[email protected]"); // CCO
  
$mail->AddReplyTo("[email protected]"); // Responder a:

  //Asignamos asunto y cuerpo del mensaje
  //El cuerpo del mensaje lo ponemos en formato html, haciendo 
  //que se vea en negrita
  
$mail->Subject "Prueba de correo";
  
$mail->Body "<b>Esta alerta le informa que se aproximan fechas de caducidad para sus pmateriales</b>"// Con formato HTML

  //Definimos AltBody por si el destinatario del correo no admite email con formato html 
  
$mail->AltBody "Esta alerta le informa que se aproximan fechas de caducidad para sus pmateriales"// Formato texto plano

  //se envia el mensaje, si no ha habido problemas 
  //la variable $exito tendra el valor true
  
$exito $mail->Send();

  
//Si el mensaje no ha podido ser enviado se realizaran 4 intentos mas como mucho 
  //para intentar enviar el mensaje, cada intento se hara 5 segundos despues 
  //del anterior, para ello se usa la funcion sleep    
  
$intentos=1
  while ((!
$exito) && ($intentos 5)) {
    
sleep(5);
         
//echo $mail->ErrorInfo;
         
$exito $mail->Send();
         
$intentos=$intentos+1;    
    
   }
 
        
   if(!
$exito)
   {
    echo 
"Problemas enviando correo electrónico a ".$valor;
    echo 
"<br/>".$mail->ErrorInfo;    
   }
   else
   {
    echo 
"Mensaje enviado correctamente";
   } 
?>
Saludos,
__________________
Todos agradeceremos que pongas el código en su respectivo Highlight