A parte che il codice è piuttosto confuso, quale sarebbe l'obbiettivo?

Non ti basterebbe semplicemente utilizzare delle sessioni?

A cosa serve il campo che cambia sempre di nome?