On Wed, 23 Jul 2003, Farrington, Ryan wrote: > Ok I have a page that reads 2 files into arrays. Pretty simple stuff like > this: > open(FILE, "file1.txt"); > @file1 = <FILE>; > close(FILE); > > open(FILE, "file2.txt"); > @file2 = <FILE>; > close(FILE); > > Now file1 contains a complete list of users. And file2 contains a list of > specific users. What I really want in the long run is to output the complete > user list into a <select></select> form on a webpage... Below is what I > currently have: > > --- CODE --- > $count = 0; > MEMBER:foreach my $curmem (@memberlist) { > $curmem =~ s/[\n\r]//g; > my $there = 0; > NOTE:foreach my $note (@notify){ > $note =~ s/[\n\r]//g; > if($note eq $curmem){ > $there = 1; > last NOTE; > } > } > if($there){ > $memberlist_htmlvar .= qq~<option selected > value="$curmem">$curmem</option>~; > } else { > $memberlist_htmlvar .= qq~<option > value="$curmem">$curmem</option>~; > } > } > --- END CODE --- > > Now my problem is this: the above code works fine when I have to write it > 3-4 times. But when I have it being written more then that the page slows > down drastically. Ideally what I would like is a single variable that > generates the option list once then have some dynamic way of checking it > against the @notify array and marking it selected if it exists. BTW each > time I get to the notify section I have to read a different file depending > on where I am at in the loop. So the memberlist stays constant and the > notify is dynamic. Ex: > > --- bad code no flames =)--- > ##before initial loop starts generate the member list with a variable I want > filled in when I make reference to the variable > foreach my $curmem (@memberlist) { > $curmem =~ s/[\n\r]//g; > $memberlist_htmlvar .= qq~<option $hash{$curmem} > value="$curmem">$curmem</option>~; > } > ##during loop > %hash = (); > NOTE:foreach my $note (@notify){ > $note =~ s/[\n\r]//g; > $hash{$note} = " selected "; > } > Print $memberlist_htmlvar; # I would like this to output the > memberlist_htmlvar but have the $hash{$curmem} > #filled in with the new variables > > > Anyone have thoughts? >
Yuck. I suggest that you create a %notify hash and then simply do a check on the %notify hash indexed by the $curmem, i.e. if ($notify{$curmem}) { #its there I don't believe that the html code generation is the appropriate target for optimization. **** [EMAIL PROTECTED] <Carl Jolley> **** All opinions are my own and not necessarily those of my employer **** _______________________________________________ Perl-Win32-Users mailing list [EMAIL PROTECTED] To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs