![]() |
Passing variables to frames - cgi
This is the problem I am having:
I have an index page where I obtain input from the user (for example their date of birth). This information is passed to Page2. Page2 has frames. Outside of the frames I can access the user's input. But within the frames I can't seem to be able to get the value. The date is stored in a global variable. Here are snippet's of code: ##Variables my ($BDAY, $path_info, $script_name); ##Obtaining value from the index page if ($q->param('birthday')) { $BDAY = $q->param('birthday'); } ##Creating frame $path_info = $q->path_info; ##Printing the fames if (!$path_info) { &print_frameset($BDAY); exit 0; } ##Printing the different frames &print_html_header; ##HTML headers &print_content if $path_info=~/content/; ##Left pane with links &print_expand($BDAY) if $path_info=~/expand/; ##Expanded graph &print_analyse if $path_info=~/analyse/; ##Options to do analysis &print_end; ##End HTML &print_error; ##Setting up the frames sub print_frameset { my $birthday = shift; $script_name = $q->script_name; print "<html><head><title>$TITLE</title></head>"; print "<frameset cols='8%,92%'>"; print "<frame src='$script_name/content' name='content'>"; print "<frameset rows='70%,30%'>"; if ($birthday) { print "<frame src='$script_name/expand' name='expand'>"; print "<frame src='$script_name/analyse' name='analyse'>"; } else { print "<frame src='$script_name/error' name='error'>"; } print "</frameset>"; print "</frameset>"; exit 0; } One of the frame's contents: sub print_expand { my $birthday = shift; print $q->h3("My birthday is on: $birthday"); } In this frame all it prints is "My birthday is on: " it is not printing the variable. I cannot figure out why I cannot get the value in the subroutines. I have checked and the value does get passed from the index page to this page. I can print it from the global variable $BDAY but not from the sub routines that form the frames. I have spent almost 2 days on this and I am starting to go insane!! I would appreciate any hints/help/suggestions you can provide. Thanks! Me |
Re: Passing variables to frames - cgi
divya wrote:
> if ($birthday) { > print "<frame src='$script_name/expand' name='expand'>"; > print "<frame src='$script_name/analyse' name='analyse'>"; > } > I cannot figure out why I cannot get the value in the subroutines. print qq(<frame src="$script_name/expand?birthday=$BDAY" name="expand">\n); print qq(<frame src="$script_name/analyse?birthday=$BDAY" name="analyse">\n); You'll need to use some of the other methods from CGI.pm to do URL encoding on the value of $BDAY. -Joe |
| All times are GMT. The time now is 09:35 PM. |
Powered by vBulletin®. Copyright ©2000 - 2013, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.