我的問題是下面的代碼更改了選中項的值,但索引 i 僅分配給選中項。我希望它通過所有復(fù)選框。例如,如果第一個和最后一個復(fù)選框被選中,我得到的job[0]是“是”和job[1]“是”,其余的是“否”,而我應(yīng)該為job[0]和得到“是” job[4]。代碼如下:if(!empty($_POST['job'])){ $i = 0; $jobArray = array("no","no","no","no","no"); // Loop to store and display values of individual checked checkbox. foreach($_POST['job'] as $selected){ $jobArray[$i] = "yes"; $i++; } } //$_POST['job']
1 回答

慕的地10843
TA貢獻1785條經(jīng)驗 獲得超8個贊
問題是復(fù)選框值只有在被選中時才會存在于您的請求中。你應(yīng)該記住它。
因此,您可以更改您的應(yīng)用程序邏輯來處理它。但是,如果您真的需要一個包含“是”、“否”值的數(shù)組,只需創(chuàng)建它即可。
假設(shè)您像這樣創(chuàng)建復(fù)選框:
<?php for ($i = 0; $i < 10; $i++): ?>
<input type="checkbox" name="job[<?= $i ?>]" value="yes">
<?php endfor; ?>
然后,在您的代碼中:
$jobs = [];
for ($i = 0; $i < 10; $i++) {
$jobs[$i] = $_POST['job'][$i] ?? 'no';
}
- 1 回答
- 0 關(guān)注
- 152 瀏覽
添加回答
舉報
0/150
提交
取消