Foros del Web » Programando para Internet » PHP »

Adjuntar dos archivos con la clase PHPMailer

Estas en el tema de Adjuntar dos archivos con la clase PHPMailer en el foro de PHP en Foros del Web. Hola chavos, alguien quien me pueda ayudar tengo un pequeño problema quiero adjuntar dos archivos con la clase phpmailer, al momento de adjuntar los archivos ...
  #1 (permalink)  
Antiguo 12/05/2016, 22:14
 
Fecha de Ingreso: mayo-2015
Mensajes: 8
Antigüedad: 8 años, 11 meses
Puntos: 0
Sonrisa Adjuntar dos archivos con la clase PHPMailer

Hola chavos, alguien quien me pueda ayudar tengo un pequeño problema quiero adjuntar dos archivos con la clase phpmailer, al momento de adjuntar los archivos solo me adjunta el primer archivo y el segundo

este es mi codigo

Código PHP:
if(!empty($arrAdjunto)){
           
           for(
$Contacto=0;$Contacto<count($arrAdjunto);$Contacto++){
              for(
$j=0;$j<count($arrAdjunto[$Contacto]);$j++){ 
                  
$archivo=$arrAdjunto[$Contacto][$j];
               
$a=strpos($archivo,$strPathDescarga);
               if (
$a!==false){
                   
$ruta=$archivo;
               }
               else{
                   
$nombre=$archivo;
                   
$mail->AddAttachment($ruta,$nombre);
               }
               }
            }
        } 
  #2 (permalink)  
Antiguo 12/05/2016, 22:49
Avatar de kip13  
Fecha de Ingreso: agosto-2011
Mensajes: 167
Antigüedad: 12 años, 8 meses
Puntos: 13
Respuesta: Adjuntar dos archivos con la clase PHPMailer

Cuando estas evaluando estas asignando $archivo a una variable en cada caso, es por eso que $archivo va a asignarse solo a una, no importa el resultado de la evaluación.
  #3 (permalink)  
Antiguo 13/05/2016, 09:26
 
Fecha de Ingreso: mayo-2015
Mensajes: 8
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta: Adjuntar dos archivos con la clase PHPMailer

Cita:
Iniciado por kip13 Ver Mensaje
Cuando estas evaluando estas asignando $archivo a una variable en cada caso, es por eso que $archivo va a asignarse solo a una, no importa el resultado de la evaluación.
Entonces lo mas recomendable es que utilice otra variable para asignar el siguiente valor
  #4 (permalink)  
Antiguo 13/05/2016, 09:45
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Adjuntar dos archivos con la clase PHPMailer

La pregunta sería: ¿y qué debería suceder cuando $a!==false entonces?

Ese bloque no tiene nada de lógica, ¿qué es lo que tratas de resolver?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 13/05/2016, 16:26
 
Fecha de Ingreso: mayo-2015
Mensajes: 8
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta: Adjuntar dos archivos con la clase PHPMailer

lo que trato de hacer en esa parte es, si cumple con la condición strpos , la variable $ruta obtiene el valor de $archivo eso es lo estoy haciendo
  #6 (permalink)  
Antiguo 13/05/2016, 16:44
Avatar de kip13  
Fecha de Ingreso: agosto-2011
Mensajes: 167
Antigüedad: 12 años, 8 meses
Puntos: 13
Respuesta: Adjuntar dos archivos con la clase PHPMailer

Intentando entenderte supongo que esta es la solucion:

Código PHP:
Ver original
  1. if(!empty($arrAdjunto)){
  2.            
  3.            for($Contacto=0;$Contacto<count($arrAdjunto);$Contacto++){
  4.               for($j=0;$j<count($arrAdjunto[$Contacto]);$j++){  
  5.                   $archivo=$arrAdjunto[$Contacto][$j];
  6.                $a=strpos($archivo,$strPathDescarga);
  7.                if ($a!==false){
  8.                    $ruta=$archivo;
  9.                }
  10.                
  11.                    $nombre=$archivo;
  12.                    $mail->AddAttachment($ruta,$nombre);
  13.                
  14.                }
  15.             }
  16.         }

Elimino el else{}.
Prueba de esa forma y nos avisas.

Saludos
  #7 (permalink)  
Antiguo 13/05/2016, 16:48
Avatar de kip13  
Fecha de Ingreso: agosto-2011
Mensajes: 167
Antigüedad: 12 años, 8 meses
Puntos: 13
Respuesta: Adjuntar dos archivos con la clase PHPMailer

Los siento tuve un problema en mi red y hubo un doble posteo, esta es la respuesta que deseaba publicarte.


Intentando entenderte supongo que esta es la solucion:

Código PHP:
Ver original
  1. if(!empty($arrAdjunto)){
  2.            
  3.            for($Contacto=0;$Contacto<count($arrAdjunto);$Contacto++){
  4.               for($j=0;$j<count($arrAdjunto[$Contacto]);$j++){  
  5.                   $archivo=$arrAdjunto[$Contacto][$j];
  6.                $a=strpos($archivo,$strPathDescarga);
  7.                if ($a!==false){
  8.                    $ruta=$archivo;
  9.                }
  10.                else{
  11.                     $ruta="Sin ruta";
  12.                    }
  13.                    $nombre=$archivo;
  14.                    $mail->AddAttachment($ruta,$nombre);
  15.                
  16.                }
  17.             }
  18.         }

Modifico el else{}, ya que al no cumplir con la condicion, la variable $ruta almacenaria lo que tu desees, en este caso coloque "Sin ruta".

Asi no se perderia el valor de $nombre ni de $ruta.

Prueba de esa forma y nos avisas.

Saludos

Etiquetas: adjuntar, 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 04:13.