These are the only two ways that PHP will do the job "automagically", as you've noticed. Unless every page on your site is treated as a form, though, I can't think of any other method of storage, other than the user's brain.
"Cookie free", really? Why?
Say you are a student at a university. They give you a student number. If you don't wear it on a name tag (GET) or put it on a card in your wallet (COOKIE) then someone from the university would have to follow you around and tell other officials your number (POST) or else you'd have to reapply at each stage of the game ("Please input your name and personal information before proceeding...."). That's a world of unecessary coding.
You could maybe try and use remote addresses and a database, but once again, lots of coding, and no guarantee of reliability.
I wonder if there's another thought ... somehow assign scope to a variable, but I'd think that'd would lead to similar issues with "uniqueness." I don't think there's really any way to handle it other then G/C. If there were, I'd think we'd have the option.
But I've been wrong before. :rolleyes: