Ciao a tutti, la struttura del codice che sto per postare ha una sintassi un pò particolare perché è un tag utente che ho scritto io del cms simple, quindi non correggete quelli ma credo di avere un errore logico nel codice.

Codice PHP:
if (!isset($_GET['gestione']) && !isset($_POST['cambia2']) && !isset($_POST['cambia']) && !isset($_POST['insnota'])){ 
... 
qui vine settato gestione (solo qui
} elseif (isset(
$_GET['gestione'])) { 
...
qui viene settatato $_POST['stato'e $_POST['cambia'
/* Cambio stato aperto accettato chiusa*/ 
else if (isset($_POST['cambia']) && $_POST['stato']=='0' || $_POST['stato']=='1' || $_POST['stato']=='3' ){ 
....
qui viene passato $_POST['stato'tramite campo input hide e tutto muore qui (torna alla pagina principale tranquillamente
/* cambio stato rifiutata / rifiutata e riassegnata / chiusa e riassegnata */ 
else if (isset($_POST['cambia']) && $_POST['stato']==|| $_POST['stato']==|| $_POST['stato']==5){ 
...
qui viene passato $_POST['stato'e settato $_POST['cambia2'
} else if (isset(
$_POST['cambia2'])){ 
... 
qui viene passato in campo hide $POST['stato'

Il problema è che quando entro in stato $_POST['cambia2'] non capisco perché esegue le istruzioni e poi mi rivisualizza le finestre e form di
Codice PHP:
else if (isset($_POST['cambia']) && $_POST['stato']==|| $_POST['stato']==|| $_POST['stato']==5){ 
ho provato in tutti i modi, ho fatto l'unset del post ma non funziona, torna li, ho fatto anche l'unset di $_POST['stato'], $_POST['cambia'], $POST['cambia2'] cercando di individuare il problema ma non funziona...

Grazie a chiunque possa aiutarmi. è un errore logico del quale non ne riesco a saltare fuori e non posso dividerlo in più file perché è una pagina di integrazione del cms e devo farla sulla stessa procedura...