in reply to Re^3: problem with Crypt::PBKDF2
in thread problem with Crypt::PBKDF2

alright. i can't say i fully understand your msg. i'm not that advanced of a Perl'er...so, I'm thinkin i will change:
sub get_params() { #* # to get the URL parameters, and package # them into a handy little scalar fit #* #@_; # (no parameters) my $cgi = CGI->new(); my $query = join('&', map { $_ . '=' . $cgi->param($_) } $cgi->param +()); return $query; # a scalar of all URL parameters, each value separate +d by an & #usage: my $url_params = get_params(); }
to
sub get_params() { #* # to get the URL parameters, and package # them into a handy little scalar fit #* #@_; # (no parameters) my $cgi = CGI->new(); my $query = map { $_ . '=' . sanitize($cgi->param{$_}) } map { sanit +ize($_) } $cgi->param(); return $query; # a scalar of all URL parameters, each value separate +d by an & #usage: my $url_params = get_params(); }

hopefully that achieves what i'm looking to do. as for "assuming $cgi->param('someval')" returns a list, i don't think it does. it returns a scalar. could be wrong, but it's how i see it getting used everywhere (my $p = $cgi->param("p");)

I was pondering why the ball was getting bigger, and then...it hit me!

Replies are listed 'Best First'.
Re^5: problem with Crypt::PBKDF2
by Athanasius (Archbishop) on Sep 17, 2017 at 06:24 UTC

    Hello again jamroll,

    The version of sub get_params you are changing from is not the same as the one shown above, since the calls to sanitize are missing. The version you are changing to has them back again, but I don’t understand why you have removed the call to join? — especially since the comment on the return line implies that the join is still in effect.

    As explained in CGI, in the section “Fetching the value or values of a single named parameter”:

    When calling param() If the parameter is multivalued (e.g. from multiple selections in a scrolling list), you can ask to receive an array. Otherwise the method will return the first value.

    So, if there are in fact multiple values, but you assign the result to a scalar, you will get only the first one. Of course, if you know there will only ever be a single value, this is not an issue.

    Hope that helps,

    Athanasius <°(((><contra mundum Iustus alius egestas vitae, eros Piratica,