# Session in Eruby

**URL:** <https://www.ruby-forum.com/t/session-in-eruby/173324>\
**Category:** Ruby\
**Created:** [August 6, 2009, 9:35pm UTC](https://www.ruby-forum.com/t/session-in-eruby/173324 "2009-08-06T21:35:20Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![steux](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/d26b3c/32.png) [@steux](https://www.ruby-forum.com/u/steux)\
**Post date:** [August 6, 2009, 9:35pm UTC](https://www.ruby-forum.com/t/session-in-eruby/173324/1 "2009-08-06T21:35:20Z")

</div>

I’m trying to make a simple use of CGI::Session.

For example, if page1.rhtml is like this:  
1 \<%  
2 require ‘cgi’  
3 require ‘cgi/session’  
4 require ‘cgi/session/pstore’ # provides CGI::Session::PStore  
5  
6 cgi = CGI.new(“html4”)  
7  
8 session = CGI::Session.new(cgi,  
9 ‘database\_manager’ =\> CGI::Session::PStore, # use PStore  
10 ‘session\_key’ =\> ‘_rb\_sess\_id’, # custom session  
key  
11 ‘session\_expires’ =\> Time.now + 30 \* 60, # 30 minute  
timeout  
12 ‘prefix’ =\> 'pstore\_sid_’) # PStore option  
13 if cgi.has\_key?(‘user\_name’) and cgi[‘user\_name’] != ‘’  
14 # coerce to String: cgi[] returns the  
15 # string-like CGI::QueryExtension::Value  
16 session[‘user\_name’] = cgi[‘user\_name’].to\_s  
17 elsif !session[‘user\_name’]  
18 session[‘user\_name’] = “guest”  
19 end  
20 session.close  
21  
22 %\>

How should page2.rhtml be like if I want to recover  
session[‘user\_name’]?
