Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Mandar Archivos Por Correo Con PHP

Estas en el tema de Mandar Archivos Por Correo Con PHP en el foro de PHP en Foros del Web. Hola a todos. Pues tengo un sistema que me genera reportes en pdf y los puedo guardar bien sin problemas. Pero ahora quiero Mandar esos ...
  #1 (permalink)  
Antiguo 16/04/2013, 15:44
Avatar de uriss  
Fecha de Ingreso: marzo-2013
Mensajes: 14
Antigüedad: 11 años, 1 mes
Puntos: 1
Pregunta Mandar Archivos Por Correo Con PHP

Hola a todos. Pues tengo un sistema que me genera reportes en pdf y los puedo guardar bien sin problemas. Pero ahora quiero Mandar esos reportes por correo, Lo que quiero es elegir a uno o varios usuarios de mi sistema para enviarle el archivo que tengo guardado.

Pero no se como ya he investigado la librería PHPMailer pero no me funciona. tengo un código que copie, según funciona perfecto pero a mi no. Y me sale error de que el remitente no es correcto y esta sin conexión.

Creo que no tengo configurado el servidor SMTP de gmail pero tampoco se como se hace. AYUDAA PORFA

Aqui pongo el codigo que tengo

Código PHP:
Ver original
  1. require("librerias/PHPMailer/class.phpmailer.php");
  2. require("librerias/PHPMailer/class.smtp.php");
  3.  
  4.  
  5. $mail = new PHPMailer();
  6. $mail->IsSMTP();
  7. $mail->SMTPAuth = true;
  8. $mail->SMTPSecure = "ssl";
  9. $mail->Host = "smtp.gmail.com";
  10. $mail->Port = 465;
  11.  
  12.  
  13. $mail->Username = "[email protected]";
  14. $mail->Password = "MiContraseña";
  15.  
  16.  
  17. $mail->From = "[email protected]"; //ESTE ES el que segun falla
  18. $mail->FromName = "Nombrel";
  19. $mail->Subject = "Asunto";
  20. $mail->AltBody = "ALGUN MENSAJE";
  21. $mail->MsgHTML("<h1>Hola Mundo!</h1>");
  22. $mail->AddAttachment("Un archivo.txt"); //Este quiero cargarlo del equipo
  23. $mail->AddAddress("[email protected]", "Usuario Prueba"); //el correo yo lo elijo de misistema con una consulta(O almenos asi quiero que me quede )
  24. $mail->IsHTML(true);
  25.  
  26.  
  27. $mail->Send();
  28.  
  29. if(!$mail->Send()) {
  30.   echo "Error: " . $mail->ErrorInfo;
  31. } else {
  32.   echo "Mensaje enviado.";
  33. }
  #2 (permalink)  
Antiguo 16/04/2013, 16:46
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 16 años
Puntos: 47
Respuesta: Mandar Archivos Por Correo Con PHP

Mira aqui explican como configuar una cuenta para autenticar en gmail

http://guiabreve.com/enviar-correos-con-phpmailer.html
  #3 (permalink)  
Antiguo 17/04/2013, 09:00
Avatar de uriss  
Fecha de Ingreso: marzo-2013
Mensajes: 14
Antigüedad: 11 años, 1 mes
Puntos: 1
Respuesta: Mandar Archivos Por Correo Con PHP

Gracias alex1084 por responder pero ya he visto ese tutorial y aun así no me ha funcionado. Dice que mi cienta no esta conectada o algo asi. y me marca error de mi cuenta que no es valida.
  #4 (permalink)  
Antiguo 17/04/2013, 10:46
 
Fecha de Ingreso: octubre-2012
Mensajes: 45
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: Mandar Archivos Por Correo Con PHP

.
.
Y es necesario un smpt?

La clave esta en el "AddReplyTo", donde pones tu nombre y el correo TUYO y creeme que funciona como si lo hubieras mandado desde ahí.

Por que para que llegue "segun" desde mi correo, yo lo uso así:

Código PHP:
require("class.phpmailer.php");
require(
"class.smtp.php");

$mail = new PHPMailer();
$mail->From     '[email protected]'// EL CORREO REMITENTE
$mail->FromName 'Mi Nombre'// EL NOMBRE DE CORREO REMITENTE

 // CORREO Y NOMBRE REMITENTE PARA RECIBIR RESPUESTA (ESTA ES LA CLAVE!!)
$mail->AddReplyTo('[email protected]','Mi Nombre');

$mail->AddAddress("[email protected]"); // DESTINATARIO
$mail->IsHTML(true);
$mail->Body  $contenido;

$contenido .= "<h1>Hola Mundo!</h1><br>";
$contenido .= "<h1>Hola Mundo! (Segunda Linea)</h1><br>";
$contenido .= "<h1>Hola Mundo! (Tercera Linea)</h1><br>";

$mail->AddAttachment("archivo.txt"); 
$mail->Send(); 

Como verás no uso ningun smpt, y siempre llega bien, aunque el correo del remitente, digamos que es "disfrazado", pero funciona.

. Suerte!

.
.
  #5 (permalink)  
Antiguo 17/04/2013, 11:18
Avatar de uriss  
Fecha de Ingreso: marzo-2013
Mensajes: 14
Antigüedad: 11 años, 1 mes
Puntos: 1
Respuesta: Mandar Archivos Por Correo Con PHP

volaveruntmissit Probe tu codigo Pero me arroja un error y yaestoy desesperado llevo 2 dias con esto de los correos y aun no consigo.

Este es el error que me manda: Could not instantiate mail function.

A y gracias por tu respuesta.
  #6 (permalink)  
Antiguo 17/04/2013, 11:46
 
Fecha de Ingreso: octubre-2012
Mensajes: 45
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: Mandar Archivos Por Correo Con PHP

.

A mi me funciona muy bien, lo acabo de probar, pero por ahi lei, que una causa es por que no tiene "Asunto", agrega la linea:

Código PHP:

$mail
->Subject "Asunto del correo"

Pueden ser varias razones, en la siguiente página te explican algunas para encontrar tu solucion. Espero que sepas ingles, o al menos lo puedas entender para tratar de encontrar el problema segun tu caso aqui:

http://www.acyba.com/en/support/documentation/246-could-not-instantiate-mail-function.html

Suerte!

.

Última edición por volaveruntmissit; 17/04/2013 a las 11:53
  #7 (permalink)  
Antiguo 17/04/2013, 11:57
Avatar de uriss  
Fecha de Ingreso: marzo-2013
Mensajes: 14
Antigüedad: 11 años, 1 mes
Puntos: 1
Respuesta: Mandar Archivos Por Correo Con PHP

Cita:
Iniciado por volaveruntmissit Ver Mensaje
.

Espero que sepas ingles, o al menos lo puedas entender para tratar de encontrar el problema segun tu caso aqui:

.


Ese comentario esta fuera de.

Pero de cualquier forma gracias por molestarte, El caso es que ya en contre otra forma con la funcion mail de PHP y utilizando el programa miniRelay y me anda muy bien Un saludo.

Etiquetas: correo, html, usuarios
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 05:33.