Allora,
cerco di chiarirti come funziona la questione:

quando invii un form con upload di file, nel server alla ricezione viene creato un array superglobale $_FILES, contenente i dati degli input type="file".

Quindi se il tuo input di tipo 'file' ha la proprietà name 'attachment', all'interno di files avrai la chiave 'attachment'.

Ho notato solo ora rileggendo il dump di poco fa che il tuo $_FILES ha la chiave 'file', ciò indica che nel tuo form html la proprietà name del tuo input di tipo "file" è "file", ovvero

Codice PHP:
<input type="file" name="file"
Correggimi se sbaglio.

Quindi agisci in questo modo:

1) decidi il nome (attributo name) del tuo input tipo file, per semplicità lo chiamerei 'attachment', copia come qui di seguito

Codice PHP:
<input type="file" name="attachment" /> 
2) Nel codice php sostituisci le parti

Codice PHP:
$_FILES['file'
con

Codice PHP:
$_FILES['attachment'
Inoltre sarebbe sempre il caso di verificare l'esistenza delle chiavi negli array e l'esistenza dei files che si va a manipolare prima di utilizzarli, non ho sottolineato la questione solo perchè capisco che sei alle prime armi e non volevo complicare ulteriormente la faccenda.

Prova quindi a seguire i due passaggi di sopra e fammi sapere.

Ciao