2015-12-22 67 views
0

我正在尋找一種解決方案來處理Perl中帶有多個複選框的表單。以下問題:Perl - 如何處理多個複選框?

<input type="checkbox" name="checkbox" value="1"> 
<input type="checkbox" name="checkbox" value="2"> 
..... 
<input type="checkbox" name="checkbox" value="500"> 

在腳本:

$q = new CGI; 
my $checkbox = $q->param("checkbox"); 
foreach (CHECKED_CHECKBOXES) 
{ do something } 

我不知道如何讀出所有選中的複選框。願有人爲我提供一個主意嗎?

+0

讓我們從這個開始:什麼是_not_使用您當前的代碼?你的預期產出是多少?你的實際產出是多少? –

+0

如果我檢查第一個複選框 - 比'$ checkbox == 1'。如果我檢查第二個或第三個也是$複選框是1. – ClubCola

回答

4

在列表上下文中調用param

my @checkboxes = $q->param("checkbox"); 
+0

我忘記了如果一個複選框被選中會發生什麼。這是否仍然有效,因爲它應該返回一個標量? – vol7ron

+0

是的,它會工作。下面是返回一個標量的代碼:'PUSH(sv)'。下面是返回一個標量列表的代碼:'PUSH(sv)'。他們是一樣的。這是因爲「列表」這個詞純粹是絨毛。除了標量外,沒有任何東西可以返回。 – ikegami