It would link the theme to their session id. This means that aslong as their browser is open you can see what theme they selected during that browser session. For example. If i go to your site and select a theme. Then go to google.com and later to sitepoint.com and then return to your site I still get to see the same theme. However. Once I close my browser the information disappears. Sessions are stored on the server instead of the users pc.
Working with sessions in php is very easy. The most important thing is that you must remember to start each script in which you want to use the session with:
Once you do that you can simply use the $_SESSION variable to store data:
$_SESSION['my_theme'] = 'theme_id';
Checking to see if the session exists is also straight forward:
// session exists