Foros del Web » Programando para Internet » PHP »

Enviar archivos multiples con mail form en php

Estas en el tema de Enviar archivos multiples con mail form en php en el foro de PHP en Foros del Web. Saludos, Me encuantro haciendo un formulario de contacto que envie al menos unas 6 imágenes adjuntas... La cuestión es que yo siempre envio 1 con ...
  #1 (permalink)  
Antiguo 09/09/2012, 13:10
Avatar de T4ke0veR  
Fecha de Ingreso: agosto-2007
Ubicación: Quito - Ecuador
Mensajes: 1.720
Antigüedad: 16 años, 7 meses
Puntos: 28
Enviar archivos multiples con mail form en php

Saludos,
Me encuantro haciendo un formulario de contacto que envie al menos unas 6 imágenes adjuntas... La cuestión es que yo siempre envio 1 con este código..

Código PHP:
    require("class.phpmailer.php");
    if (
$_POST['action'] == "send") {
        
$varname $_FILES['archivo']['name'];
        
$vartemp $_FILES['archivo']['tmp_name'];
       
        
$mail = new PHPMailer();
        
$mail->Host "localhost";
        
$mail->From "[email protected]";
        
$mail->FromName "Blog Unijimpe";
        
$mail->Subject $_POST['asunto'];
        
$mail->AddAddress($_POST['destino']);
        if (
$varname != "") {
            
$mail->AddAttachment($vartemp$varname);
        }
        
$body "<strong>Mensaje</strong><br><br>";
        
$body.= $_POST['mensaje']."<br>";
        
$body.= "<i>Enviado por X</i>";
        
$mail->Body $body;
        
$mail->IsHTML(true);
        
$mail->Send();
    } 
se que tengo este campo que me define el archivo adjuntado..

Código PHP:
       $varname $_FILES['archivo']['name'];
        
$vartemp $_FILES['archivo']['tmp_name']; 
y aqui me lo muestra en el mail enviado
Código PHP:
if ($varname != "") {
            
$mail->AddAttachment($vartemp$varname); 
Pero cuando trato de multiplicar los campos deja de funcionarme...

Alguien puede ayudarme?
__________________
Diseño gráfico, Web, imagen corporativa, publicidad ...
  #2 (permalink)  
Antiguo 10/09/2012, 03:00
 
Fecha de Ingreso: abril-2012
Mensajes: 590
Antigüedad: 12 años
Puntos: 58
Respuesta: Enviar archivos multiples con mail form en php

Hay posibilidad de que las mandes comprimidas? Además sería mejor para que pesara menos el e-mail. Puedes comprimir las imágenes y luego enviar el zip.
  #3 (permalink)  
Antiguo 10/09/2012, 14:37
Avatar de T4ke0veR  
Fecha de Ingreso: agosto-2007
Ubicación: Quito - Ecuador
Mensajes: 1.720
Antigüedad: 16 años, 7 meses
Puntos: 28
Respuesta: Enviar archivos multiples con mail form en php

No, pues la idea es para que clientes se registren y envien imagenes via web y no todo el mundo que usa una computadora sabe comprimir archivos.... La idea es que sea flexibe a cualquier tipo de usuario
__________________
Diseño gráfico, Web, imagen corporativa, publicidad ...
  #4 (permalink)  
Antiguo 10/09/2012, 15:47
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Enviar archivos multiples con mail form en php

Tal cual el código que expones debe de funcionar, pon el formulario que usas y el código modificado, así podemos ver que es lo que esta fallando.
  #5 (permalink)  
Antiguo 10/09/2012, 17:34
Avatar de T4ke0veR  
Fecha de Ingreso: agosto-2007
Ubicación: Quito - Ecuador
Mensajes: 1.720
Antigüedad: 16 años, 7 meses
Puntos: 28
Respuesta: Enviar archivos multiples con mail form en php

Código PHP:
    require("class.phpmailer.php");
    if (
$_POST['action'] == "send") {
        
$varname $_FILES['archivo']['name'];
        
$vartemp $_FILES['archivo']['tmp_name'];
       
        
$mail = new PHPMailer();
        
$mail->Host "localhost";
        
$mail->From "[email protected]";
        
$mail->FromName "Full Rapido Web";
        
$mail->Subject $_POST['asunto'];
        
$mail->AddAddress($_POST['destino']);
        if (
$varname != "") {
            
$mail->AddAttachment($vartemp$varname);
        }
        
$body "<strong>Mensaje</strong><br><br>";
        
$body.= $_POST['mensaje']."<br>";
        
$body.= "<i>Enviado por X</i>";
        
$mail->Body $body;
        
$mail->IsHTML(true);
        
$mail->Send();
    } 
este es el formulario la parte donde duplico las entradas para cargar archivos

Código PHP:
<form name="formu" id="formu" action="upload.php" method="post" enctype="multipart/form-data">
     <
dl>            
   <
dt><label>Archivos a Subir:</label></dt>
        <!-- 
Esta div contendrá todos los campos file que creemos -->
   <
dd><div id="adjuntos">
        <!-- 
Hay que prestar atención a estoel nombre de este campo debe siempre terminar en []
        
como un vectory ademas debe coincidir con el nombre que se da a los campos nuevos 
        en el script 
-->
   <
input type="file" name="archivo[]" />
   <
input type="file" name="archivo[]2" />
   <
input type="file" name="archivo[]3" />
<
br />
   </
div></dd>
   <
dt>&nbsp;</dt>
   <
dd>
     <
div></div>
   </
dd>
   <
dt>&nbsp;</dt>      
   <
dd><input type="submit" value="Enviar" id="envia" name="envia" /></dd>
     </
dl>
</
form
__________________
Diseño gráfico, Web, imagen corporativa, publicidad ...
  #6 (permalink)  
Antiguo 10/09/2012, 18:29
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Enviar archivos multiples con mail form en php

Lee lo siguiente:

http://www.php.net/manual/en/feature...d.multiple.php

Etiquetas: formulario, html, mail, multiples
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 10:18.