Foros del Web » Programando para Internet » PHP »

Adjuntar documentos phpmailer

Estas en el tema de Adjuntar documentos phpmailer en el foro de PHP en Foros del Web. Estimados, Tengo la siguiente consulta. Tengo una tabla en una base mysql en donde almaceno unos documentos. En esta tabla almaceno el codigo documento, el ...
  #1 (permalink)  
Antiguo 16/06/2011, 07:28
 
Fecha de Ingreso: octubre-2009
Mensajes: 39
Antigüedad: 15 años, 1 mes
Puntos: 0
Adjuntar documentos phpmailer

Estimados,

Tengo la siguiente consulta. Tengo una tabla en una base mysql en donde almaceno unos documentos. En esta tabla almaceno el codigo documento, el nombre del documento, la ruta del mismo, el largo, la fecha y el tipo de documento. Estos se almacenan en una carpeta temporal llamada "documentos". Actualmente necesito enviar un mail utilizando la clase phpmailer en la que debo adjuntar x cantidad de documentos.

Tengo la siguiente instrucción para adjuntar un documento ya que en un principio solo era uno, pero ahora deben ser varios y no se utilizar bien esta clase para adjuntar correctamente ni como rescatar estos documentos
El mail se envia sin problemas, pero sin el documento adjunto que era como en un principio lo solicitaron:

Código PHP:

    $documentoAdjunto 
$_POST['documentoId'];
    
$d = new Documento;
    
$documento $d->recuperar ($documentoAdjunto);
    if ( ! 
$documento )
    {
        exit (
$d->getMensajes ());
    }
    list(
$ruta$largo$tipo$nombre) = $documento;
    
    if(isset(
$_FILES['filename']) && $_FILES['filename'] != ''){
        
$mail->AddAttachment($ruta,$nombre);
    } 
¿Alguien me puede explicar como rescatar los documentos para enviarlos adjuntamente utilizando esta clase phpmailer?

Desde ya muchas gracias.
  #2 (permalink)  
Antiguo 16/06/2011, 10:00
Avatar de DeeR  
Fecha de Ingreso: diciembre-2003
Ubicación: Santiago
Mensajes: 520
Antigüedad: 20 años, 11 meses
Puntos: 17
Respuesta: Adjuntar documentos phpmailer

mmunoza

Analizando la fracción de código que has posteado, creo que el problema está ubicado en el if previo al AddAttachment.

Si te fijas, estás verificando $_FILES['filename'], que es válido si has Posteado (y subido) un archivo en el campo filename.

Cambialo por

Código PHP:
 if( is_file($ruta) )
{
       
$mail->AddAttachment($ruta,$nombre); 

Saludos

Etiquetas: documentos, phpmailer
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 08:01.