zentara                                                       
             <[EMAIL PROTECTED]                                             
             am.net>                                                    To 
             Sent by:                  beginners-cgi@perl.org              
             [EMAIL PROTECTED]                                          cc 
             ooper.com                                                     
                                                                   Subject 
                                       Re: perl cgi scrolling list within  
             08/12/2005 09:13          a forloop                           
             AM                                                            
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           







On Wed, 10 Aug 2005 13:32:39 -0400, [EMAIL PROTECTED] wrote:


>                       foreach (@ARRAY With H strings)
>                       {
>                      print ('htapes99',[$_],5,'true',my %attributes);
>                        }
>
>It prints to the intranet with the scroll lisyt but it is not printing the
>actual H strings. Instead it is printing the array structure lie so:
>
>
>ARRAY(0x16bd90)5trueARRAY(0x16f974)5trueARRAY(0x16bcf4)5trueARRAY(0x16bd90)5trueARRAY(0x16f9)


All you need to do is dereference them and do whatever you want with
them.

  foreach my $aref (@ARRAY With H strings)
      {
       my @arr = @$aref;
       print ('htapes99',  @arr   ,5,'true',my %attributes);
       }

Of course you will probably want to make a nested loop
to loop thru @arr instead of just printing it.



--
I'm not really a human, but I play one on earth.
http://zentara.net/japh.html


+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Derek B. Smith
OhioHealth IT
UNIX / TSM / EDM Teams




I was able to get it working without a foreach loop by using:

my @H99tapes = ( ## .. ##);

print $q->scrolling_list(-name=>'imported_tapes',
                        -values=>[EMAIL PROTECTED],
                   -default=>[$H99tapes[0]],
                        -multiple=>1,
                        -override=>1,
                        -size=>10),"<br>";
print   $q->submit(-name=>'action',-value=>'Delete'),
        $q->submit(-name=>'action',-value=>'Add');


##--## Recover the new tape(s) from the Scroll List parameter
'imported_tapes' ##--##

my @imports = param('imported_tapes');


My original problem was I wanted to use splice to dynamically re-populate
an array or hash based off of what the user selected through this scroll
list, but could not get this to work.

Here s the pseucdode I am using:

as H numbers are submitted by user from a scroll list
remove selected elements from @H99tapes
repopulate new list into @UserH99tapes
print @UserH99tapes

OR

as H numbers are submitted by user from a scroll list
remove selected elements from @H99tapes
repush remaining elements into @H99tapes
print @H99tapes

Any ideas to help me with this problem?
basically dynamically splicing an array or hash.  Note each element
contains unique data, H[0-1000] strings for example.


                                ##--## BEGIN IMPORT
##--##
                                ##--## AS H NUMBERS ARE SELECTED, REMOVE
SUBMITTED ELEMENTS FROM USER ARRAY ##--##
                                ##--## REPOPULATE LIST INTO NEW ARRAY,
PRINT NEW ARRAY.                     ##--##

                                my @tape_imports_to_del =
$q->param(htapes99); ##--## SELECTED BY USER ##--#
                                my $tape_count = scalar
@tape_imports_to_del;  ##--## COUNT            ##--##

                                foreach (@tape_imports)
                                {
                                       splice
(@H99tapes,0,$tape_count,@H99tapes)
                                }


thank you,

derek


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>


Reply via email to