ti ringrazio della risposta, ma non va.

io faccio così:

if ($_FILES["immagine"]["error"] == 0){

if (is_uploaded_file($_FILES["immagine"]["tmp_name"])){
$estensione = explode('.', $_FILES["immagine"]["name"]);
if ($estensione[1] == $ext){
.
.
.
if (move_uploaded_file($_FILES["immagine"]["tmp_name"], $path.$fileName)){


e faccio la query

nonostante questi controlli, se l'upload lo interrompo, la query mi viene eseguita lo stesso. immagino io perchè qualcosa gli viene passato e lui lo considera come se fosse intero