Ho modificato lo script in questo modo:
codice:
<?php

$nome = $_POST['nome'];
$cognome = $_POST['cognome'];
$sociale = $_POST['sociale'];
$indirizzo = $_POST['indirizzo'];
$cap = $_POST['cap'];
$citta = $_POST['citta'];
$provincia = $_POST['provincia'];
$iva = $_POST['iva'];
$telefono = $_POST['telefono'];
$mail = $_POST['mail'];
$campotesto = $_POST['campotesto'];

$subject = "Dati raccolti dal form";

$mail_body .= "Nome: $nome\n";
$mail_body .= "Cognome: $cognome\n";
$mail_body .= "Ragione Sociale: $sociale\n";
$mail_body .= "Indirizzo: $indirizzo\n";
$mail_body .= "CAP: $cap\n";
$mail_body .= "Città: $citta\n";
$mail_body .= "Provincia: $provincia\n";
$mail_body .= "Partita IVA: $iva\n";
$mail_body .= "Telefono: $telefono\n";
$mail_body .= "Email: $mail\n";
$mail_body .= "Note per la stampa: $campotesto\n";
$mail_body .= "Nome persona che effettua l'ordine: $nome2\n";
$mail_body .= "Cognome persona che effettua l'ordine: $cognome2\n";

// Valorizzo le variabili relative all'allegato
$allegato = $_FILES['allegato']['tmp_name'];
$allegato_type = $_FILES['allegato']['type'];
$allegato_name = $_FILES['allegato']['name'];
$allegato2 = $_FILES['allegato2']['tmp_name'];
$allegato2_type = $_FILES['allegato2']['type'];
$allegato2_name = $_FILES['allegato2']['name'];

  // Apro e leggo il file allegato
  $file = fopen($allegato,$allegato2,'rb');
  $data = fread($file, filesize($allegato,$allegato2));
  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";*/
  $mime_boundary = "<<<:" . md5(uniqid(mt_rand(), 1)); 
  
  // Aggiungo le intestazioni necessarie per l'allegato
  $headers .= "\rnMIME-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";
  
  // Aggiungo le intestazioni necessarie per l'allegato
  $headers .= "\rnMIME-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/plain; charset=\"iso-8859-1\"\n";
  $msg .= "Content-Transfer-Encoding: 7bit\n\n";
  $msg .= $mail_body . "\n\n";

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

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

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

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

if(mail($destinatario,$subject,$msg,$headers))
{
echo "L'ordine è stato inviato correttamente";
}
else
{
echo "Impossible inviare l'ordine";
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento senza titolo</title>
</head>

<body>
</body>
</html>
solo che i due allegati al messaggio sono vuoti, sono tutti e due di 0kb.
Possibile che non ci sia nessuno che abbia affrontato e risolto questo problema ?
Sono 4 giorni che ci sto dietro.
Per favore datemi una mano.