non capisco perchè non posso mettere un ciclo if fra dentro uno switch.
Nel codice che hai postato in origine, l'IF era direttamente dentro allo switch e non dentro a case 1:

lo posso fare solo se memorizzo il valore su una variabile di sessione ?
Lo puoi fare utilizzando le sessioni, utilizzando una form oppure passandolo come parametro query string.