Oh! Didn't think about that. Yes, that looks like a very workable solution.
Thanks again. -John On 12/10/02 11:33 AM, "Larry Coffin" <[EMAIL PROTECTED]> wrote: > At 2:15 PM -0500 12/10/02, John Stokes wrote: >> Ah yes... That makes sense. >> >> That's the solution I've used in other cases (for instance, resolving a CGI >> param to a path.) Unfortunately, it's not really practical to define a bunch >> of temporary variables for a form that may have hundreds (literally) of >> input fields. > > Doing that is probably going to be easier than writing really > robust query string code. If you are worried about keeping your code short > and sweet, then use a hash: > > foreach my $key ($q->param()) { > $form_data{$key} = $q->param($key); > } > > Or even (according to the man page, although I haven't used it): > > %form_data = $q->Vars(); > > Be careful though, in that these simple cases won't handle > multi-value values quite the way you might expect. > > > Then you can call values by name when/if you need them: > > print <<FORM_END > > Name: $form_data{'name'} > > FORM_END > > ---Larry > >> So, it looks like I'm back to where I was before: splitting the string on & >> before I process %26. >> >> That's still OK. It's a better solution than what I'm doing now. >> >> Thanks again all (esp. Larry). >> >> -John >> >> On 12/10/02 11:03 AM, "Larry Coffin" <[EMAIL PROTECTED]> wrote: >> >>>> Print >> End_form; >>>> >>>> Name: $q->param("name") >>>> >>>> End_form >>> >>> That's because you can't execute perl code within this construct. >>> It is essentially a double quoted string that just happens to span multiple >>> lines. So, this doesn't work just like: >>> >>> print "Name $q->param('name')\n"; >>> >>> won't work the way you want it to. >>> >>> You have to get the value in a variable first: >>> >>> $name = $q->param('name'); >>> >>> print <<End_form; >>> >>> Name: $name >>> >>> End_form >>> >>> >>> ---Larry >>> >>> >>> +------------------------------------------------------------------------+ >>> | Larry Coffin, G.P.H. Watertown, MA | >>> | http://www.PointInfinity.com/lcoffin/ [EMAIL PROTECTED] | >>> +------------------------------------------------------------------------+ >>> >>> Money is the root of all evil, and man needs roots >>> >>> >>> - >>> >> >> -- >> -John Stokes >> Computer Psychiatrist (Director of Information Technology) >> Church Resource Ministries >> [EMAIL PROTECTED] >> >> Three Pillars: Humility, Communication, Balance >> >> >> -- >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] > > > > +------------------------------------------------------------------------+ > | Larry Coffin, G.P.H. Watertown, MA | > | http://www.PointInfinity.com/lcoffin/ [EMAIL PROTECTED] | > +------------------------------------------------------------------------+ > > Money is the root of all evil, and man needs roots > > > - > -- -John Stokes Computer Psychiatrist (Director of Information Technology) Church Resource Ministries [EMAIL PROTECTED] Three Pillars: Humility, Communication, Balance -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]