Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Inviare mail con allegate piu immagini

    Ciao a tutti,

    questa volta volevo chiedervi supporto per l'invio di più immagini allegate ad una mail.

    Io utilizzo lo script che vi riporto di seguito, e funziona benissimo! ... se ad essere allegata è una sola immagine.

    Ma per allegarne due , ad esempio , come posso fare ?

    Ho provato a modificare lo script raddoppiando le definizioni degli allegati ... ho googolato in giro .... ma proprio non saprei....

    Mi date una mano ?

    Ecco lo script che utilizzo io:

    Codice PHP:
    // Recupero il valore dei campi del form
    $destinatario "xxxxxxx@xxxxxxx.it, xxxxxxx@xxxxxxx.it";
    $mittente "xxxxxxx<xxxxxxx@xxxxxxx.it>";
    $oggetto "xxxxxxx";

    // Valorizzo le variabili relative all'allegato
    $allegato $_FILES['foto']['tmp_name'];
    $allegato_type $_FILES['foto']['type'];
    $allegato_name $_FILES['foto']['name'];

    // Creo altre due variabili ad uno interno
    $headers "From: " $mittente;
    $msg "";

    // Verifico se il file è stato caricato correttamente via HTTP
    // In caso affermativo proseguo nel lavoro...
    if (is_uploaded_file($allegato))
    {
      
    // Apro e leggo il file allegato
      
    $file fopen($allegato,'rb');
      
    $data fread($filefilesize($allegato));
      
    fclose($file);

      
    // Adatto il file al formato MIME base64 usando base64_encode
      
    $data chunk_split(base64_encode($data));

      
    // Genero il "separatore"
      // Serve per dividere, appunto, le varie parti del messaggio.
      // Nel nostro caso separerà la parte testuale dall'allegato
      
    $semi_rand md5(time());
      
    $mime_boundary "==Multipart_Boundary_x{$semi_rand}x";
     
      
    // Aggiungo le intestazioni necessarie per l'allegato
      
    $headers .= "\nMIME-Version: 1.0\n";
      
    $headers .= "Content-Type: multipart/mixed;\n";
      
    $headers .= " boundary=\"{$mime_boundary}\"";

      
    // Definisco il tipo di messaggio (MIME/multi-part)
      
    $msg .= "This is a multi-part message in MIME format.\n\n";

      
    // Metto il separatore
      
    $msg .= "--{$mime_boundary}\n";

      
    // Questa è la parte "testuale" del messaggio
      
    $msg .= "Content-Type: text/html; charset=\"iso-8859-1\"\n";
      
    $msg .= "Content-Transfer-Encoding: 7bit\n\n";
      
    $msg .= $messaggio "\n\n";

      
    // Metto il separatore
      
    $msg .= "--{$mime_boundary}\n";

      
    // Aggiungo l'allegato al messaggio
      
    $msg .= "Content-Disposition: attachment; filename=\"{$allegato_name}\"\n";
      
    $msg .= "Content-Transfer-Encoding: base64\n\n";
      
    $msg .= $data "\n\n";

      
    // chiudo con il separatore
      
    $msg .= "--{$mime_boundary}--\n";
    }
    // se non è stato caricato alcun file
    // preparo un semplice messaggio testuale
    else
    {
     
    $msg $dascrivere;
     
    //$nome_mittente = "Registro Ispezioni Leolandia";                                                                                                                       //----//
    //$mail_mittente = "scan.service@xxxxxxx.it";                                                                                                                   //----//
    //$mail_destinatario = "xxxxxxx@xxxxxxx.it";                                                          //----//
                                                                                                                                                                                                              //----//
    //$mail_oggetto = "Inserita Nuova Ispezione";                                                                                                                              //----//
    //$mail_corpo = $dascrivere;                                                                                                                                                      //---//
                                                                                                                                                                                                            //----//
    $headers "MIME-Version: 1.0\r\n";                                                                                                                                     //---//
    $headers .= "From: xxxxxxx<zzzzzzzzzzz@xxxxxxx.it>\r\n";                                                             //---//
    $headers .= "Content-Type: text/html; charset=\"iso-8859-1\"\r\n";                                                                                 //---//
    $headers .= "Content-Transfer-Encoding: 7bit\r\n";                                                                                                             //----//
    //$headers .= "From: <$mail_mittente>";                                                                       
    }

    // Invio la mail
    if (mail($destinatario$oggetto$msg$headers))
    {
      echo 
    "<p>Mail inviata con successo!</p>";
    }else{
      echo 
    "<p>Errore!</p>";

    Ultima modifica di Alhazred; 04-06-2018 a 14:11

  2. #2
    Nessuno ha un suggerimento.....?

  3. #3
    Nessuno sa come si possa fare ?

  4. #4
    Ti conviene utilizzare pacchetti tipo PHPMailer in maniera tale che hai più supporto per l'invio di email e in più ti è più semplice gestire allegati e quant'altro come puoi vedere dagli esempi

  5. #5
    Grazie fdisotto !

    Ora mi guardo bene le funzionalità del pacchetto ... vediamo se fa al caso mio

    Grazie ancora

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.