Hi arnOLD,
Yes, hashes work very well. Here is an exaple of how I'm passing them to a class for easy track of scalars by using hidden values embedded in html:
#-------- sub of the test.pl program ------------
###############################################
## oops_hidden_values
###############################################
sub oops_hidden_values
{
my ( $one, $two, $three ) = @_;
## hidden_values
if ( $one eq "true" )
{
%hidden_values =
(
is_demo => $FORM{ "is_demo" },
customSQL => $FORM{ "customSQL" },
number_of_pages => $FORM{ "number_of_pages" },
main_first_page => $FORM{ "main_first_page" },
affiliateno => $FORM{ "affiliateno" },
);
$oMy->hidden_values( %hidden_values );
}
## hidden values2
if ( $two eq "true" )
{
%hidden_values = (
clientno => $FORM{ "clientno" },
firstname => $FORM{ "firstname" },
lastname => $FORM{ "lastname" },
cdate => $FORM{ "cdate" },
ccompany => $FORM{ "ccompany" },
cstreet => $FORM{ "cstreet" },
ccity => $FORM{ "ccity" },
cstate => $FORM{ "cstate" },
czipcode => $FORM{ "czipcode" },
ccountry => $FORM{ "ccountry" },
cbusph => $FORM{ "cbusph" },
cfax => $FORM{ "cfax" },
cidno => $FORM{ "cidno" },
ctaxable => $FORM{ "ctaxable" },
cemail => $FORM{ "cemail" },
website => $FORM{ "website" },
cardtype => $FORM{ "cardtype" },
cardholder => $FORM{ "cardholder" },
cardnumber => $FORM{ "cardnumber" },
cardmonth => $FORM{ "cardmonth" },
cardyear => $FORM{ "cardyear" },
comment => $FORM{ "comment" },
cleared => $FORM{ "cleared" },
rows_per_page => $FORM{ "rows_per_page" },
acct_choice_1 => $FORM{ "acct_choice_1" }
);
$oMy->hidden_values( %hidden_values );
}
## hidden_values3
if ( $three eq "true" )
{
%hidden_values = (
col_firstname => $FORM{ "col_firstname" },
col_lastname => $FORM{ "col_lastname" },
col_cdate => $FORM{ "col_cdate" },
col_ccompany => $FORM{ "col_ccompany" },
col_cstreet => $FORM{ "col_cstreet" },
col_ccity => $FORM{ "col_ccity" },
col_cstate => $FORM{ "col_cstate" },
col_czipcode => $FORM{ "col_czipcode" },
col_ccountry => $FORM{ "col_ccountry" },
col_cbusph => $FORM{ "col_cbusph" },
col_cfax => $FORM{ "col_cfax" },
col_cidno => $FORM{ "col_cidno" },
col_ctaxable => $FORM{ "col_ctaxable" },
col_cemail => $FORM{ "col_cemail" },
col_web_site => $FORM{ "col_web_site" },
col_comment => $FORM{ "col_comment" },
col_cleared => $FORM{ "col_cleared" },
col_thetime => $FORM{ "col_thetime" },
col_affiliate_no => $FORM{ "col_affiliate_no" }
);
$oMy->hidden_values( %hidden_values );
}
}
### Here is the hidden_values method of the class ###
#############################################
############ hidden_values ###################
#############################################
sub hidden_values
{
my $self = shift;
my ( %hidden_values ) = @_;
while ( ( $key, $value ) = each( %hidden_values ) )
{
$self->{ HIDDEN_VALUES } = $self->{ HIDDEN_VALUES } . qq
~
<input type="hidden" name="$key" value="$value">
~;
}
return $self->{ HIDDEN_VALUES };
}
The html hidden values are stored in the $self->{HIDDEN_VALUES} property via the above method of the class. When I'm ready to stream the html hidden values to the browser, I execute the following code from the .pl
print qq~$oMy->{HIDDEN_VALUES}~;
Regards,
LelandJ
Leland F. Jackson, CPA
Software - Master (TM)
Nothing Runs Like the Fox