As far as I got the idea of session right, they work in the following way:
When you create a session, the data (session vars) is stored in your filesystem (or db, depends on what you pointed it ... filesystem is the default) and a unique session_id (PHPSESSID per default ...) is created. You can't just believe in session and the values get passed via a miracle to the next HTTP Request your (let's call him) visitor sends to your webserver ... you need to tell your webserver what session you want to access, for that you need the session_id, normaly the session_id is stored in a cookie on the clientside, but if the client rejects to accept cookies, you need to transfer it via URL ... (or you have PHP compiled with enable-trans-id ...).
Does that make sense and answers your question ?!? If there is still something left you want to know, just ask !!
cya Rob