【发布时间】:2018-08-14 05:04:12
【问题描述】:
我有一个带有 2 个提交按钮的小型 CGI 脚本。我希望当前脚本将用户重定向到另一个脚本,具体取决于按下哪个提交按钮。
CGi 脚本:
#!/usr/bin/perl -w
# Modules
use strict;
use warnings;
use CGI;
my $q = CGI->new();
print $q->header();
print $q->submit(-name=>'button',-value => 'disable');
print $q->submit(-name=>'button',-value => 'enable');
if ($q->param('button') eq "disable"){
print $q->redirect(-uri=>"http://1.1.1.1./cgi-bin/services/switch_XXX.cgi?disable");
} elsf ($q->param('button') eq "enable"){
print $q->redirect(-uri=>"http://1.1.1.1./cgi-bin/services/switch_XXX.cgi?enable");
} else {
}
但实际上并没有执行任何操作。错误日志显示如下:
[Tue Mar 06 11:48:44 2018] [error] [client XXXX] Use of uninitialized value in string eq at /var/www/cgi-bin/test.cgi line 23.
[Tue Mar 06 11:48:44 2018] [error] [client XXXX] Use of uninitialized value in string eq at /var/www/cgi-bin/test.cgi line 26.
谁能告诉我导致错误的原因以及重定向不起作用的原因?
非常感谢!
【问题讨论】:
-
你的输出和表单处理代码混在一起了
-
加上你输出的 HTML 也不完整
-
@ChrisTurner 我只想为多个提交按钮分配不同的操作..
标签: perl cgi url-redirection