Jindo Soul wrote:
> 
> Hi!
> 
> I recently made a decision to adopt Apache::ASP as the template tool for my site.  
>The only thing I'd like to find out is whether or not Apache::ASP works with 
>Apache::Session.  I read from an online article 
>http://perl.apache.org/features/tmpl-cmp.html that Apache::ASP can be  hookied up to 
>Apache::Session.  However, I just could not find the instruction on how this can and 
>should be done.  Am I mistaken or have I missed something in the online docs?
> 

Note the Apache::ASP mailing list is now at: [EMAIL PROTECTED]
Subscribe by sending an email to [EMAIL PROTECTED]

Integration of Apache::Session is similar to other environments,
except where you put the code.  In Apache::ASP, you can put it
in global.asa Script_OnStart to get run every time, then you
can init the session to look like the ASP $Session.  

The only differences are you don't get the ASP API around $Session, 
like session management with garbage collection/timeouts, events,
or other API calls like Lock(), Abandon(), SessionID().
Also, without using ASP session, you won't get to use
SessionQueryParse cookieless sessions either.

Here is some untested code that you could start with
for using Apache::Session with MySQL:

# in httpd.conf, turn off $Application, $Session
PerlSetVar NoState 1

# in global.asa
use Apache::Session::MySQL; 
sub Script_OnStart { 
  # ... init mysql dbh before 
  my $id = $Request->Cookies("SESSION_ID");
  tie %hash, 'Apache::Session::MySQL', $id, { Handle => $dbh, LockHandle => $dbh }; 
  if($id ne $hash{_session_id}) { 
    $Response->Cookies("SESSION_ID", $hash{_session_id}); 
  } 
  $Session = \%hash; 
  $Server->RegisterCleanup(sub { untie (%$Session) }); }
}

--Josh
_________________________________________________________________
Joshua Chamas                           Chamas Enterprises Inc.
NodeWorks Founder                       Huntington Beach, CA  USA 
http://www.nodeworks.com                1-714-625-4051

Reply via email to