my $CGI = new CGI(); #Create initial form &create_form($CGI) unless param(); #Get Action parm & go to appropriate subroutine my $action; if ($action = param('PDB')) { &show_pdb($CGI) } if ($action = param('RESULTS')) { &get_results($CGI) } #################subroutines sub create_form { my $query = shift; print $query->header("text/html"); print $query->start_html; print $query->start_form; print $query->p("Pick a PDB code\n"); print $query->popup_menu( -NAME=>'pdb', -VALUES=>\@keys, -DEFAULT=>" "); print $query->submit( -NAME=>'PDB', -LABEL=>'PDB info'); print $query->end_form; print $query->hr(); print $query->start_form(-method=>'POST', -action=>"./right2.pl"); print $query->p("Pick a DOCK run to see the failures\n"); print $query->popup_menu( -NAME=>'results', -VALUES=>['DOCK4_FLEX_500', 'DOCK4_FLEX_5000', 'DOCK4_FLEX_50000']); print $query->submit( -NAME=>'RESULTS', -LABEL=>'Get results'); print $query->endform; print $query->hr(); print $query->end_html; } sub get_results { my $query = shift; print $query->header(); print $query->frameset({-cols=>'25%, 75%'}, frame({-name=>'left', -src=>"./left.pl", -method=>'POST'}), frame({-name=>'right', -src=>"./right2.pl", -action=>"./right2.pl", -method=>'POST'}) ); }