in reply to Re^2: Cannot clear cgi param (if it's really what I need to do)
in thread Cannot clear cgi param (if it's really what I need to do)

This does not appear to be the case.

BEGIN { $ENV{QUERY_STRING} = 'mode=orig'; $ENV{REQUEST_METHOD} = 'GET'; } use CGI qw( hidden ); print hidden( 'mode', 'second arg' ), "\n"; print hidden( -name => 'mode', -default => 'default', ), "\n"; print hidden( -name => 'mode', -default => 'forced', -override => 1 ), "\n"; __END__ <input type="hidden" name="mode" value="orig" /> <input type="hidden" name="mode" value="orig" /> <input type="hidden" name="mode" value="forced" />

Perhaps your code is doing something different from what you think it's doing?

Replies are listed 'Best First'.
Re^4: Cannot clear cgi param (if it's really what I need to do)
by lepetitalbert (Abbot) on Jan 31, 2008 at 09:33 UTC

    Hi kyle,

    As I print other hidden params

    print hidden( 'day' , $day );

    I printed this one

    print hidden( 'mode' , 'save' , 1 );

    and this don't work.

    print hidden( -name => 'mode' , -default => 'save' , -override => 1);

    works, but I don't understand why ?

    Have a nice day.

    "There is only one good, namely knowledge, and only one evil, namely ignorance." Socrates
      When you don't use the named parameter style, the first argument is the field name and the rest are values for the field.
      print hidden( 'mode' , 'save' , 1 );
      is short for
      print hidden( -name => 'mode' , -default => [ 'save', 1 ]);

        Hi ikegami,

        Thank you for the explanation.

        Have a nice day.

        "There is only one good, namely knowledge, and only one evil, namely ignorance." Socrates