Perchè non usi semplicemente le sessioni invece dei cookie?

Per quanto riguarda il tuo problema, abilita la visualizzazione degli errori e togli la @ davanti a setcookie() e sono sicuro che capirai da cosa deriva il problema.