Ma se ci fai caso tutto quello che dici che non ha senso (perchè ancora non definito) non funziona a meno che non siano stati ricevuti i valori che tu dici dal form stesso. Non so se ci avevi fatto caso. Se non è stato cliccato il bottone "submit" non è previsto che succeda niente. Infatti c'è
if (isset($_POST[$id]))
Ovvero, se il bottone submit, che ha name="$id", non ha inviato le informazioni al file stesso, non succede nulla. Dopo che le ha ricevute esegue la query. Ho capito male o parlavi di questo?