Hi kmullin5016,

Try this:

+ use strict; use warnings; use CGI; + my $CGI = new CGI; + my $menu_values = {'one' => 'eenie', 'two' => 'meenie', 'three' => 'mi +nie'}; + print $CGI->popup_menu(-name=>'menu_name', -values=>$menu_values);

If you had used strict and warnings in your code, you would have seen the error:

Reference found where even-sized list expected at test.pl line 18.

which might have tipped you off that your were trying to assign a hash reference to a hash.

When you use parentheses ( ... ), it's a plain hash; when you use braces { ... } it's a hash reference (like a pointer to a hash).

Use the latter, and it produces the same output as in your first example which you said "works fine".

Oh, and you apparently had your arguments backward in the hash.  I just reversed the order ('eenie' => 'one' becomes 'one' => 'eenie'), and got the output that you said was correct (ie. the same as print $CGI->popup_menu(-name=>'menu_name', -values=>{'one'=>'eenie', 'two'=>'meenie', 'three'=>'minie'});):

<select name="menu_name"> <option value="three">minie</option> <option value="one">eenie</option> <option value="two">meenie</option>

s''(q.S:$/9=(T1';s;(..)(..);$..=substr+crypt($1,$2),2,3;eg;print$..$/

In reply to Re: popup_menu CGI.pm problems by liverpole
in thread popup_menu CGI.pm problems by kmullin5016

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.