Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re: reg access of stored session variable

by Anonymous Monk
on Nov 11, 2013 at 23:22 UTC ( [id://1062072]=note: print w/replies, xml ) Need Help??


in reply to reg access of stored session variable

Try structuring your program like this, only print headers/content in one place , it makes debugging easier

#!/usr/bin/perl -- use strict; use warnings; use DBI; use CGI qw/:all :html3/; use CGI::Carp qw(fatalsToBrowser warningsToBrowser); use CGI::Session qw(); Main( @ARGV ); exit( 0 ); sub Main { my $cgi = CGI->new; my $session = CGI::Session->new((undef, $cgi, { Directory=>"/tmp"} +)); my $next = determine_dispatch( $cgi, { dashboard_status => \&dashboard_status , errlogin => \&errlogin , _default => \&default, } ); my $dbh= DBI->connect( 'DBI:mysql:database=insite_dashboard:user=root;host=152.102.12 +9.45', { RaiseError => 1, PrintError => 1, }, ) ; my $headers_content = $next->( $cgi, $session, $dbh ); print @$headers_content; } sub determine_dispatch { my( $cgi, $dispatch_hash ) = @_; my $path_info = $cgi->path_info; while( my( $path, $callback ) = each %$dispatch_hash ){ if( $path_info =~ m{\Q$path\E} ){ return $callback; } } return $dispatch_hash->{_default}; } sub dashboard_status { my( $cgi, $session, $dbh ) = @_; ... return [ $session->header, $dash_content ]; } sub errlogin { my( $cgi, $session, $dbh ) = @_; ... return [ $session->header, $err_content ]; } sub default { my( $cgi, $session, $dbh ) = @_; ... return [ $session->header, $default_content ]; }

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1062072]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others scrutinizing the Monastery: (4)
As of 2024-04-25 10:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found