[PHP] Inviare mail con piu immagini allegate

[email protected]

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>";
}
 

[email protected]

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
 

[email protected]

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.433
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
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 5
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
U Link a doppio file PHP PHP 0
E PHP & jQuery PHP 8
N Passare array da php a javascript PHP 5
F Applicazione PHP/MySQL per prenotazioni: limitare il numero massimo di posti prenotabili PHP 20
L tipo boolean non funzionante su mariadb (mysql). E codice php 7.4. PHP 0
U PHP creare un file excel dopo ricerca nel DB PHP 0
M PHP/MySQL - Estrarre valori min e max di ogni gruppo PHP 5
F Php e fatturazione elettronica PHP 0
P lanciare script asp (o php) da jquery Javascript 1
Couting95 inserire dati da un file di testo in una tabella in php PHP 1
P Data scraping in PHP non funziona PHP 4
C Calcoli matematici in php PHP 5
F Scrivere dei dati in word con php PHP 0
D PHP leggere cartella di Windows PHP 1
I dominio aruba versione php server linux Domini 3
G Colorare menu select attraverso ricerca php PHP 0
L PHP motore di ricerca nel sito PHP 1
S PHP e Mysqli PHP 0
Y Stampare da php su un foglio A6 attraverso una stampante esterna PHP 1
M Visulizzare immagine con php PHP 8
G [PHP] Creare script di prenotazione con controllo disponibilità. PHP 7
G leggere file txt e stampare con php il contenuto a video PHP 7
F Ricreare struttura php+mysql su Xampp Apache 0
Z PHP.INI - STMP per invio email con PHP Server Dedicati e VPS 1
M Array associativi php su 2 campi mysql PHP 10
G Invio form con PHP PHP 3

Discussioni simili