Salve a tutti,
Sono riuscito a trovare in internet un form contatti, con la possibilità di inviarmi un allegato via mail, per il mio sito.
Ora, avrei bisogno che questo form, non avesse solo un campo per gli allegati, ma, al click dell'utente su(per esempio) un piu, l'utente stesso possa inserire un allegato in più, fino ad un massimo di cinque allegati. E' possibile fare ciò?? Potreste aiutarmi con qualche codice
Inoltre, vorrei(per evitare spam selvaggio) che se l'utente, nel momento in cui non riempe tutti i campi obbligatori(email,oggetto,messaggio ed almeno un allegato) venisse fuori un errore. Ero riuscito a far venir fuori il messaggio d'errore, ma a me la mail veniva spedita lo stesso


Vi copio qui i file delle due pagine:

pagina uno chiamata "form.htm"
Codice PHP:
<html>

<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<
title>WEBSPA.it Richiesta di inserimento foto</title>
</
head>

<
body background="http://www.metnbuy.altervista.org/111/grafica/img/img1striscia.png">

<
form action="form1.php" method="POST" enctype="multipart/form-data">
<
input type="hidden" name="destinatario" value="fedegamez@yahoo.it">
<
div align="center">
<
table border="0" width="567">
<
tr>
                                            <
td width="561" colspan="2">
                                            <
p align="center">[b]
                                            <
font face="Tahoma" color="#00B00D" size="5">
                                            
RICHIESTA INSERIMENTO FOTO</font>[/b]</p>
                                            <
p align="center">[b]
                                            <
font face="Tahoma" color="#FFFFFF" style="font-size: 1pt">
                                            -</
font>[/b]</p>
                                            </
td>
                                        </
tr>
<
tr>
                                            <
td width="561" colspan="2">
                                            <
hr color="#00B00D" width="90%"></td>
                                        </
tr>
<
tr>
                                            <
td width="561" colspan="2">
                                            <
p align="center">
                                            [
b]
                                            <
font face="Tahoma" size="1" color="#00B00D">
                                            
Pagina per la richiesta 
                                            dell
'inserimento della tua vespa 
                                            nell'
archivio</font>[/b]</td>
                                        </
tr>
<
tr>
                                            <
td width="561" colspan="2">
                                            <
hr color="#00B00D" width="90%"></td>
                                        </
tr>
<
tr>
  <
td>
    <
p align="right">[b]
    <
font face="Tahoma" style="font-size: 11pt" color="#00B00D">La tua Mail:</font>[/b]</td>
  <
td><input type="text" name="mittente" value="" /></td>
</
tr>
<
tr>
  <
td>
    <
p align="right">[b]
    <
font color="#00B00D" face="Tahoma" style="font-size: 11pt">Oggetto</font>[/b]</td>
  <
td><input type="text" name="oggetto" value="" /></td>
</
tr>
<
tr>
  <
td align="center" colspan="2">[b]
<
font color="#00B00D" face="Tahoma" style="font-size: 11pt">Messaggio:</font>[/b]


    <
textarea cols="44" rows="8" name="messaggio"></textarea></td>
  </
tr>
<
tr>
  <
td></td>
  <
td></td>
</
tr>
<
tr>
  <
td>
    <
p align="right">[b]
    <
font color="#00B00D" face="Tahoma" style="font-size: 11pt">Allega la foto 
    dell
'articolo:</font>[/b]</td>
  <td><input type="file" name="allegato" /></td>
</tr>
<tr>
  <td colspan="2"></td>
</tr>
<tr>
  <td colspan="2">
    <p align="center"><input type="submit" value="Invia la Foto" /></td>
</tr>
<tr>
  <td colspan="2"></td>
</tr>
<tr>
                                            <td width="561" colspan="2">
                                            <hr color="#00B00D" width="90%"></td>
                                        </tr>
<tr>
                                            <td width="561" colspan="2">
                                            <p align="center">
                                            <font face="Tahoma" size="2">| 2010 
                                            © Webspa.it | All Rights Reserved 
                                            |</font></td>
                                        </tr>
</table>
</div>
</form><script language=JavaScript>
<!--

var message="";
///////////////////////////////////
function clickIE() {if (document.all) {(message);return false;}}
function clickNS(e) {if 
(document.layers||(document.getElementById&&!document.all)) {
if (e.which==2||e.which==3) {(message);return false;}}}
if (document.layers) 
{document.captureEvents(Event.MOUSEDOWN);document.onmousedown=clickNS;}
else{document.onmouseup=clickNS;document.oncontextmenu=clickIE;}

document.oncontextmenu=new Function("return false")
// --> 
</script>
</body>

</html> 




pagina due chiamata "form1.php"
Codice PHP:
<?php
// Recupero il valore dei campi del form
$destinatario $_POST['destinatario'];
$mittente $_POST['mittente'];
$oggetto $_POST['oggetto'];
$messaggio $_POST['messaggio'];

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

// Creo 2 variabili che riempirò più avanti...
$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/plain; 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;\n";
  
$msg .= " filename=\"{$allegato_name}\"\n";
  
$msg .= "Content-Transfer-Encoding: base64\n\n";
  
$msg .= $data "\n\n";

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

// Invio la mail
if (mail($destinatario$oggetto$msg$headers))
{
  echo 
"

Mail inviata con successo!</p>"
;
}else{
  echo 
"

Errore!</p>"
;         <--- non funzionaanche se lascio i campi vuoti viene fuori una pagina con sritto "Mail inviata con successo"
}
?>



Ringraziando anticipatamente chi mi aiuterà...

Federico