2011-06-08 224 views
0

我知道,如果一個複選框與選擇的東西像檢查複選框選中

if (isset($_POST['option1'])) 

我可以看到但是,如果我有一個像5個複選框,我怎麼能立即看到選擇哪些?我已經對所有人做了if語句嗎?

+2

你能解釋一下嗎?你想做什麼?一些代碼應該在那裏 – 2011-06-08 10:10:21

回答

1

在迭代中檢查它們。

for($i=0; $i<5; $i++) 
    if (isset($_POST['option'.$i])) 
    { 
     //do stuff... 
    } 
-2

對於給定的形式:

<select name="foo"> 
    <option value="opt1" selected="selected">bar</option> 
    <option value="opt2">whatever</option> 
</select> 

<?php echo $_POST['foo'] ?>會打印出 「OPT1」。

+0

-1這不是一個複選框。 – 2011-06-08 10:13:02

+0

對,我的錯! – patapizza 2011-06-08 10:14:25

2

對於具有相同名稱的使用方括號複選框即

<input type="checkbox" name="option[]" value="1" /> Option 1 
<input type="checkbox" name="option[]" value="2" /> Option 2 
<input type="checkbox" name="option[]" value="3" /> Option 3 
<input type="checkbox" name="option[]" value="4" /> Option 4 
<input type="checkbox" name="option[]" value="5" /> Option 5 

然後$_POST['option']將打勾值的陣列。

-1

如果你有這樣的事情:

<input type="checkbox" name="options[]" value="option1">option1 
<input type="checkbox" name="options[]" value="option2">option2 
<input type="checkbox" name="options[]" value="option3">option3 
在PHP

$_POST["options"]將是選定的選項

foreach($_POST['options'] as $opt) { 
    echo "selected option: $opt <br />"; 
} 

你也可以使用array_flip()數組,所以數組鍵是選項值...

+0

-1不,它不會。 – 2011-06-08 10:15:51

+0

我的不好,忘了必不可少的東西,加入[] – 2011-06-08 10:17:27

+0

猜你是單選按鈕混淆 – 2011-06-08 10:17:40