Non ho letto approfonditamente, pero' ti faccio un'osservazione sulla quale puoi lavorare, queste due righe di codice:
Codice PHP:
$file_type filetype($nomefile);
$file_size filesize($nomefile); 
cercano di calcolare tipo e nome di un file che non esiste, infatti l'istruzione:
Codice PHP:
$pdf->Output($nomefile,s
viene eseguita dopo.....

Non dico che il resto sia giusto.... ma di sicuro questo e' sbagliato.... controlla che oltre a questa non ci siano altre incongruenze di questo tipo...