Mi dava errori sulle parentesi {, così sembra funzionare ma mi da errore sui permessi della cartella:
Che permessi, utente e gruppo deve avere la cartella? adesso è impostata a 0777, utente e gruppo root.


Codice PHP:
<?php ob_start();

######### CARTELLA DOVE SALVARE I FILE #########
$upload_dir "./utpdba";
$allowed_types = array("application/pdf");

######### NUOVO NOME FILE #########
//$nomef = substr($_FILES["upfile"]["name"], 0, 11);
//$estf = substr($_FILES["upfile"]["name"], -3);
$new_name "$nomef"." "$estf";

// Se $new_name è vuota, il nome sarà lo stesso del file uploadato
$file_name = ($new_name) ? $new_name $_FILES["upfile"]["name"];


######### CONTROLLO SELEZIONE FILE #########
if(trim($_FILES["upfile"]["name"]) == ""):
     
header("Location: {$_POST['indietro']}?errore=SELEZIONARE IL FILE DA INVIARE");
     exit();
elseif (!
in_array($_FILES["upfile"]["type"],$allowed_types)):

######### CONTROLLO TIPO FILE #########
     
header("Location: {$_POST['indietro']}?errore=CARICARE SOLAMENTE FILE PDF");
     exit();
else:
     if (@
is_uploaded_file($_FILES["upfile"]["tmp_name"])):
        @
move_uploaded_file($_FILES["upfile"]["tmp_name"], "$upload_dir/$file_name")
        or die(
"Impossibile inviare il file, controllare i permessi della directory");
    else:
        die(
"Problemi nell'invio del file: " $_FILES["upfile"]["name"]);
    endif;
endif;
     
header("Location: {$_POST['indietro']}?ok=FILE CARICATO CORRETTAMENTE");
?>