I fully agree with jsegal on this, the performance of accessing this small hash twice can't be much. If you have more that a cople dozen entries in the popup it can become unmanageable for the user. I suppose it could be a concern for a heavily laden server though.

It is probably possibe to avoid these steps, but I it would have to be one of two ways:

  1. Not using the CGI module, or
  2. Using techniques known only to the maintainers of the CGI module

I'll also add that the you hinted at a worry about the load on your DB. That also won't be an issue as you are only sucking the data into the hash once.

Good luck with your app. It looks like you are concerned with proper coding and that can't be bad.

-Kurt


In reply to Re: Re: Re: Populating CGI popup_menu via DBI by KPeter0314
in thread Populating CGI popup_menu via DBI by Itatsumaki

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.