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 ]; }
In reply to Re: reg access of stored session variable
by Anonymous Monk
in thread reg access of stored session variable
by amithublikar
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |