我有一個使用複選框的表單,它從mysql數據庫獲取所有數據。所以可以有1到無限的複選框。從表單中獲取數組
我需要獲取表單提交時檢查的每一個。
它的工作原理是,如果它們全部被選中,但如果只檢查了一些,它將顯示沒有或只顯示其中一個。
這裏是我使用的顯示數據的複選框代碼:
while ($myrow = mysqli_fetch_array($result)){
echo<<<END
<input type="checkbox" id="units" name="unit[$i]" value="$myrow[unit_id]" /> $myrow[unit_id]<br />
END;
$i++;
}//end while
下面是當提交表單時,我使用的代碼:
$i=0;
while($_POST["unit"][$i] != ""){
$unit = $_POST["unit"][$i];
$unit = $res2->real_escape_string($unit);
echo $unit."<br />";
$i++;
} // end while
我相信問題是事實上,我有while($_POST["unit"[$1] != "")
,如果一個盒子被選中,然後另一個2或3下來被檢查,它會看到第二個空的並停止。
如果是這樣的話,我需要幫助來弄清楚如何使它們全部通過並打印出被檢查過的。請記住,可能有任何地方從1到無限的選中,所以它不能是一個集數字,如while($i <= 50)
謝謝!
此外,你有不良HTML,你不能有重複的ID字段。 (你可能只需刪除id =「units」) – Aknosis