А почему бы тебе не воспользовтся функцией switch...case
Код трудно читаем из-за большого количества IF()
Ошибки в коде не увидел.