检查是否存在 CGI GET 参数
Check whether a CGI GET parameter exists
我正在尝试确定 Perl CGI 程序中是否存在 GET
查询参数
这是我在 sf
存在时的查询:
http://server.com/support?page=hello&sf=1
其次,这是我在 sf
不存在时的查询:
http://server.com/support?page=hello
这是我想要完成的一些伪代码:
if (sfVariable does not exist) {
// process code
}
我已经试过了,但没有成功(只是打印了变量以确保我们正确检索它):
use CGI;
my $q = CGI->new;
my $sfVar = $q->param('sf');
print $sfVar;
编辑:
这是我所在的位置:
use CGI;
my $q = CGI->new;
my $page = $q->param('sf');
if(not defined $page){
print "no sf variable\n";
}
我收到一个错误。这是日志:
[Wed Feb 21 16:39:56.041581 2018] [cgi:error] [pid 6198] [client 111.111.111.111:57878] malformed header from script 'test': Bad header: no sf variable
[Wed Feb 21 16:42:02.146266 2018] [cgi:error] [pid 11150] [client 111.111.111.111:58047] malformed header from script 'test': Bad header: no sf variable
[Wed Feb 21 16:42:11.578022 2018] [cgi:error] [pid 29861] [client 111.111.111.111:58062] End of script output before headers: test
如果给定值不存在,param
方法将 return undef
你需要这个
my $sf_var = $q->param('sf');
if ( not defined $sf_var ) {
print "There is no sf parameter\n";
}
我正在尝试确定 Perl CGI 程序中是否存在 GET
查询参数
这是我在 sf
存在时的查询:
http://server.com/support?page=hello&sf=1
其次,这是我在 sf
不存在时的查询:
http://server.com/support?page=hello
这是我想要完成的一些伪代码:
if (sfVariable does not exist) {
// process code
}
我已经试过了,但没有成功(只是打印了变量以确保我们正确检索它):
use CGI;
my $q = CGI->new;
my $sfVar = $q->param('sf');
print $sfVar;
编辑:
这是我所在的位置:
use CGI;
my $q = CGI->new;
my $page = $q->param('sf');
if(not defined $page){
print "no sf variable\n";
}
我收到一个错误。这是日志:
[Wed Feb 21 16:39:56.041581 2018] [cgi:error] [pid 6198] [client 111.111.111.111:57878] malformed header from script 'test': Bad header: no sf variable
[Wed Feb 21 16:42:02.146266 2018] [cgi:error] [pid 11150] [client 111.111.111.111:58047] malformed header from script 'test': Bad header: no sf variable
[Wed Feb 21 16:42:11.578022 2018] [cgi:error] [pid 29861] [client 111.111.111.111:58062] End of script output before headers: test
如果给定值不存在,param
方法将 return undef
你需要这个
my $sf_var = $q->param('sf');
if ( not defined $sf_var ) {
print "There is no sf parameter\n";
}