PHP:使用复选框

时间:2010-11-01 17:05:50

标签: php

我有一个表单,里面有一个带复选框的while()。

我希望当你标记然后按提交时,消息将被删除。

现在,我有复选框和提交按钮等等。现在我的所有复选框都是这样的:

   <input class="cbPick" name="cbPick" type="checkbox" value="<?php echo $id; ?>">

我如何在PHP中使用它?我该怎么办,$ _POST [“cbPick”]知道它是否标记?

当我有更多这些时,我怎么知道哪个是哪个?

3 个答案:

答案 0 :(得分:4)

复选框需要使用数组。如果在每个名称的末尾放置[]括号,PHP将自动将复选框放入数组中。

Please choose type of food:<br />
Steak:<input type="checkbox" value="Steak" name="food[]">:<br />
Pizza:<input type="checkbox" value="Pizza" name="food[]">:<br />
Chicken:<input type="checkbox" value="Chicken" name="food[]">:<br />

然后你可以做

$foodArray=$_POST['food'];
echo $foodArray[0]; //Steak Value
echo $foodArray[1]; //Pizza Value
echo $foodArray[2]; //Chicken Value

PS - 通过Google搜索“Checkboxes PHP”并点击第一个链接找到此信息。我鼓励你在发布一个容易获得的问题之前,至少做一点研究。

答案 1 :(得分:0)

if (!empty($_POST['cbPick']])) {
  // Do stuff here
}

empty()首先检查是否存在,然后检查该值是否为非nullish(null,zero,空字符串等)。这样,如果数组键不存在,您将不会收到通知。复选框有点奇怪,因为如果选中它们,它们只会通过$ _POST数组。否则,该变量根本不会发布。

答案 2 :(得分:0)

如果您使用相同的名称(cbPick[])作为几个复选框,$_POST["cbPick"]将作为包含每个选中值的数组填充。