in reply to Changing a variable name

We need more details to actually help. If you post the code and the errors we would have a much better chance to figure out what is happening.

=Blue
...you might be eaten by a grue...

P.S. If you do post code, put <code> and <\code> tags around it.

Replies are listed 'Best First'.
Re: Re: Changing a variable name
by Anonymous Monk on Jan 24, 2001 at 23:06 UTC
    I cant get params to print inside of a qq thats the first issue. Using cgipm
    print REG qq[ ABOUT YOU Last Name : param('Last_Name') First Name : param('First_Name') ];

      You may want to check out a smiliar thread, which would have pointed you at import_names() method mentioned amongst other things, but there are more tricks you may want to try ...

      ... @{[ ]}-voodoo to embed arbritrary expressions inside strings.

      print REG qq[; Last Name : @{[ param('Last_Name') ]} First Name : @{[ param('First_Name') ]} ]

      ... use printf() to move the param()'s outside your string.

      printf REG qq[Last Name : %s\nFirst Name : %s\n], param('Last_Name'), param('First_Name'); ## ... or ... printf REG <<__TEXT__, param('Last_Name'), param('First_Name'); Last Name : %s First Name : %s __TEXT__

      ... resort to the much underused (?) formats if you like to see a little more clearly what goes where.

      format REG = Last Name : @<<<<<<<<<<<<<<<<<<<<<<<< param('Last_Name') First Name : @<<<<<<<<<<<<<<<<<<<<<<<< param('First_Name') . write REG;

      The downside to these are you need to be mindful of what param() is returning as a multi-value param() could throw things out of whack if you're only expecting a single value, something import_names() neatly sidesteps by providing both scalars and arrays of the same param() to make context explicit.

          --k.


      Since CGI.pm is a module, not built in, Perl has no way of knowing that those params are variables! Perl will only interpolate a scalar variable when it starts with $. Try one of these:
      way one: $Last = param('Last_Name'); print "Your last name is: $last\n"; way two, using the . (concentation operator): print "Your last name is: ".param('Last_Name')."\n";


      When's the last time you used duct tape on a duct? --Larry Wall