in reply to [SOLVED] Unwanted parameter when executing CGI scripts
Now, when calling such scripts without any parameters (i.e. without query string after the script name / path), the scripts are seeing an unwanted parameter "Keywords" (which does not have a value).
Trivial to test
$ perl -MData::Dump -MCGI -e " dd( CGI->new(q{?noampernoequal}) )" bless({ ".charset" => "ISO-8859-1", ".fieldnames" => {}, ".parameters" => ["keywords"], "escape" => 1, "param" => { keywords => ["?noampernoequal"] }, "use_tempfile" => 1, }, "CGI") $ perl -MCGI -e " print CGI->new(q{?noampernoequal})->param " keywords $ perl -MCGI -e " print CGI->new(q{?noampernoequal})->keywords " ?noampernoequal $ perl -MCGI -e " print for CGI->new(q{?noampernoequal})->keywords " ?noampernoequal $ perl -MCGI -e " print for CGI->new(q{?a=b;noampernoequal})->keywords + "
Easy to remove
use Data::Dump; use CGI; my $q = CGI->new( q{?noampernoequal}); dd $q; dd $q->param; dd $q->keywords; $q->delete('keywords') if $q->keywords; dd $q->param; dd $q; __END__ bless({ ".charset" => "ISO-8859-1", ".fieldnames" => {}, ".parameters" => ["keywords"], "escape" => 1, "param" => { keywords => ["?noampernoequal"] }, "use_tempfile" => 1, }, "CGI") "keywords" "?noampernoequal" () bless({ ".charset" => "ISO-8859-1", ".fieldnames" => {}, ".parameters" => [], "escape" => 1, "param" => {}, "use_tempfile" => 1, }, "CGI")
I don't think I've ever used this feature in 10 years :)
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Unwanted parameter when executing CGI scripts
by Nocturnus (Scribe) on Jan 05, 2013 at 08:01 UTC | |
by Anonymous Monk on Jan 05, 2013 at 09:19 UTC | |
by Anonymous Monk on Jan 05, 2013 at 09:21 UTC | |
by Nocturnus (Scribe) on Jan 05, 2013 at 16:24 UTC | |
by Anonymous Monk on Jan 06, 2013 at 01:25 UTC | |
by Nocturnus (Scribe) on Jan 07, 2013 at 08:26 UTC |