dovresti usare empty() al posto di isset(). isset() verifica che sia settato il campo e non gliene importa se il campo e' NULL, vuoto o con valore. controlla solo che ci sia l'indice associativo.

empty() controlla che il campo non sia vuoto, NULL e sia settato.

codice:
if (!empty($_POST['stato'])) {
   
    $stato= "stato='".$_POST['stato']."',";
  } else {
    $stato='0'; 
  }