[PHP] Inviare mail con piu immagini allegate

Alex@1983

Utente Attivo
9 Mag 2015
126
2
18
Ciao a tutti,

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:

PHP:
// Recupero il valore dei campi del form
$destinatario = "[email protected],";
$mittente = "[email protected]";
$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($file, filesize($allegato));
  fclose($file);

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

  // Genero il "separatore"
  $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 = "aaaaaa";                                                                                                                       
//$mail_mittente = "[email protected]";                                                                                                                   
//$mail_destinatario = "[email protected]";                                                         
                                                                                                                                                                                                          
//$mail_oggetto = "nnnnnnnnnn";                                                                                                                             
//$mail_corpo = $dascrivere;                                                                                                                                                     
                                                                                                                                                                                                        
$headers = "MIME-Version: 1.0\r\n";                                                                                                                                     
$headers .= "From: [email protected]>\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>";
}
 

Alex@1983

Utente Attivo
9 Mag 2015
126
2
18
Certo Max 1,

non volevo essere insistente ....

ne tanto meno credevo che qualcuno "dovesse" rispondermi ...

e' solo ... "l'ansia della curiosità" e la voglia di cercare di risolvere l'inghippo e veder finalizzato il mio "progettino"

tutto qui
 

Alex@1983

Utente Attivo
9 Mag 2015
126
2
18
Insomma .... non cè proprio nessuno che ha una soluzione al "problema" .... io continuo a googolare ... ma non ne vengo a capo....
 

Max 1

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
29 Feb 2012
4.449
338
83
Te l'ho già detto se qualcuno vuole rispondere non ha bisogno delle tue sollecitazioni. Alla prossima chiudo
 
Discussioni simili
Autore Titolo Forum Risposte Data
I [PHP] inviare form con allegato tramite una mail PHP 1
A Non riesco ad inviare una mail attraverso PHP su Xampp PHP 2
M Inviare mail con PHP tramite Mozilla PHP 3
S inviare the_title() in una mail tramite form html/php PHP 0
F inviare una mail con php mailer PHP 3
P Inviare mail da form php anche al mittente PHP 37
S problemi ad inviare mail in locale con php PHP 13
U aiuto per script php inviare una mail PHP 1
csi Inviare file jpg in locale alla stampante con php PHP 0
E Inviare variabile a PHP da ciclo in JS Javascript 0
O [PHP] inviare dati da form e script ajax PHP 0
M Inviare variabili da menu a tendina a pagina php con post PHP 6
H [PHP] Inviare dati PHP 3
E [PHP] inviare 2 form consecutivamente PHP 4
S PHP: inviare via email contenuto di una funzione PHP 4
max_400 Si possono inviare sms con php? PHP 3
G inviare comandi ssh con script php PHP 4
T inviare a php contenuto cella PHP 3
P Non riesco più ad inviare email con il php PHP 82
valient13 inviare option con php PHP 1
D_evil1991 inviare variabili da php al javascript PHP 0
G php effettuare una connessione ssh o telnet ed inviare dei comandi PHP 3
R Inviare file tramite un form a un indirizzo email tramite pagina php PHP 1
M file php per inviare dati form PHP 0
M Inviare email con allegati usando PHP PHP 2
F Cerco Hosting con VECCHIE versioni di php Hosting 0
Cosina Captcha php PHP 1
S passare un valore da un form a un file .php con metodo post PHP 4
N php msyql PHP 6
N php problemi a visualizzare video PHP 3
A menu a tendina php PHP 1
D protezione cartelle: blocco visualizzazione/scaricamento contenuto, ma abilitazione utilizzo dati da parte di file .php presenti sul sito Web Server 1
F Php date_diff PHP 1
K [PHP] Aggiungere caratteri ad una stringa in base alla lunghezza della stessa PHP 2
C Wp-admin a file php WordPress 5
Lino80 [Retribuito] Cerco programmatore php per modifica/inserimento funzione/valori da un plugin importer wordpress Offerte e Richieste di Lavoro e/o Collaborazione 0
M Passaggio variabili array php su un tasto jq PHP 3
E Php aggiornamento tabella PHP 9
G phpmailer e php 8.1 con estensione mysqli PHP 6
M Invio dati database via email php PHP 0
K [php] Problema con inner join PHP 4
K [php]form invio dati PHP 0
P Codifica caratteri speciali mysql php PHP 0
K [PHP] Problema con variabili concatenate. PHP 1
E Stampante termica escpos-php PHP 6
JeiMax Modifica codice php personalizzato PHP 2
G Come modificare un pdf in php PHP 1
U Link a doppio file PHP PHP 0
E PHP & jQuery PHP 8
N Passare array da php a javascript PHP 5

Discussioni simili