Foros del Web » Programando para Internet » PHP »

Autorrespondedor php que envie un archivo adjunto

Estas en el tema de Autorrespondedor php que envie un archivo adjunto en el foro de PHP en Foros del Web. Eso es, necesito algo simple que me permita enviar un email de autorrespuesta con un archivo adjunto que traigo desde mi hosting, lo que no ...
  #1 (permalink)  
Antiguo 24/02/2014, 10:12
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.423
Antigüedad: 22 años, 10 meses
Puntos: 20
Autorrespondedor php que envie un archivo adjunto

Eso es, necesito algo simple que me permita enviar un email de autorrespuesta con un archivo adjunto que traigo desde mi hosting, lo que no tengo claro es como deberia cnstruir las cabeceras del mensaje y cómo traer la url de ubicación del archivo.

Agradezco cualquier ayuda.
__________________
Say no more.......
  #2 (permalink)  
Antiguo 24/02/2014, 10:26
Avatar de enlinea777  
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 15 años, 10 meses
Puntos: 127
Respuesta: Autorrespondedor php que envie un archivo adjunto

para auto respuesta debes generar un codigo para tu server de correo, php no tiene como saber si te llega un correo.
  #3 (permalink)  
Antiguo 24/02/2014, 10:28
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.423
Antigüedad: 22 años, 10 meses
Puntos: 20
Respuesta: Autorrespondedor php que envie un archivo adjunto

Bueno, tal vez no me explique bien. no es tanto un autorrespuesta es mas bien un correo que se debe enviar luego de que el usuario diligencie un formulario (ya toda esa parte la tengo hecha) me falta es solo lo de enviarle el adjunto y el correo.
__________________
Say no more.......
  #4 (permalink)  
Antiguo 24/02/2014, 10:40
Avatar de enlinea777  
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 15 años, 10 meses
Puntos: 127
Respuesta: Autorrespondedor php que envie un archivo adjunto

ahora si se entiende.

Pues con phpmailer (busca en google hay mucha informacion).

ejemplo
Código 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.dominio.com";
//Le indicamos que el servidor smtp requiere autenticación
$mail->SMTPAuth true;

//Le decimos cual es nuestro nombre de usuario y password  

$mail->Username "[email protected]";

$mail->Password "mipassword";

//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 "Claudio Paul";

//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=30;

//Indicamos cual es la dirección de destino del correo

$mail->AddAddress("[email protected]");

//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 phpmailer";

$mail->Body "<b>Mensaje de prueba en formato html</b>";

//Definimos AltBody por si el destinatario del correo

//no admite email con formato html

$mail->AltBody "Mensaje de prueba en formato solo texto";

//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 hará 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";  }  ?>
Fuente: http://www.teayudamos.net/phpmailer-...-editando-aun/

Para adjuntar pones $mail->AddAttachment("direccion absoluta e tu archvo"); antes de send

Última edición por enlinea777; 24/02/2014 a las 10:46

Etiquetas: Ninguno
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 17:45.