因此,在PHP我可以對付他們爲:如何在PHP中將多個<input type =「checkbox」/>作爲數組發佈?
foreach($_POST['checkboxname'] as $i => $value)
...
因此,在PHP我可以對付他們爲:如何在PHP中將多個<input type =「checkbox」/>作爲數組發佈?
foreach($_POST['checkboxname'] as $i => $value)
...
做這樣的事情:在名稱
<input type="checkbox" name="checkboxArray[]" />
注[]。
像這樣:
<input type="checkbox" name="checkboxname[]" />
<input type="checkbox" name="checkboxname[]" />
<input type="checkbox" name="checkboxname[]" />
<input type="checkbox" name="checkboxname[]" />
<input type="checkbox" name="checkboxname[]" />
只需追加[]以他們的名字。
有一個小問題!如果我檢查第五個複選框,它應該像'Array([4] => on)',但它顯示'Array([0] => on)爲什麼它應該像'checkboxname [1] '和'checkboxname [2]'??? – 2015-09-26 17:07:57
對於那些可以向服務器發送多個值的HTML表單元素(如複選框或多個選擇框),您應該爲您的HTML元素名稱使用一個名稱類似的數組。像這樣:
<input type="checkbox" name="checkboxname[]" />
也建議您使用「多/表單數據」的ENCTYPE爲表單元素。
<form enctype="multipart/form-data" action="target.php" method="post">
然後在您的PHP腳本中,您可以像訪問數組一樣訪問多個值數據。
似乎'enctype'是不需要的。 – user198729 2009-12-30 07:02:45
如果您使用數組作爲複選框,則應添加一個值選項作爲單個複選框的標識符,因爲然後返回的數組從 Array([0] => on,[1] => on)到數組([0] => value1,[1] => value5),它可以讓你識別複選框。
+1很好的答案。 @unknown請記住,如果沒有選中它們,則該字段甚至不會被提交,導致'foreach'失敗。確保在'foreach'之前測試'isset($ _ POST ['checkboxname'])''。 – 2009-12-30 06:58:29