我不知道如何做以下事情并希望得到一些帮助。 我有一个php文件打开并在.txt文件的数组中显示一些细节,并选中复选框。一旦用户选中了这些复选框并点击了,我需要另一个php文件来识别选中的复选框并显示数据。
编辑:您忘记了详细信息,与数据库关联的复选框位于数组中,因此当用户输入搜索词时,只会弹出相关信息和复选框。这意味着所有复选框都具有相同的ID并且相同。我该如何解决这个问题?答案 0 :(得分:2)
复选框是:
<input type="checkbox" name="checkbox-name" value="1"/>
如果选中此复选框并提交此表单,则在目标页面上的复选框为:
$_POST['checkbox-name']=1;
如果未定义复选框,则不设置POST值,例如:
if(!isset($_POST['checkbox-name'])){ echo 'not selected'; }
编辑:
如果需要数组,那么同一数组的所有复选框的名称应该是:
<input type="checkbox" name="my-checkboxes[]" value="first"/>
然后可以通过以下方式在PHP中循环:
foreach($_POST['my-checkboxes'] as $values){
echo $values;
}
同样适用于可以作为数组发送的其他HTML表单元素。
答案 1 :(得分:1)
假设您的初始页面包含以下内容:
<form action="results.php" method="POST">
<input type="checkbox" name="checkbox1" value="1" />
<input type="checkbox" name="checkbox2" value="2" />
<input type="checkbox" name="checkbox3" value="3" />
<input type="submit" value="Submit" />
</form>
您的results.php
应该是这样的:
<?php
echo isset($_POST['checkbox1']) ? "Box 1 is selected.<br />" : "Box 1 is not selected.<br />";
echo isset($_POST['checkbox2']) ? "Box 2 is selected.<br />" : "Box 2 is not selected.<br />";
echo isset($_POST['checkbox3']) ? "Box 3 is selected." : "Box 3 is not selected.";
?>
编辑:您也可以将它们粘贴到变量中,如下所示:
$cb1 = isset($_POST['checkbox1']) ? true : false;
$cb2 = isset($_POST['checkbox2']) ? true : false;
$cb3 = isset($_POST['checkbox3']) ? true : false;
并做一些if
陈述:
if (!$cb1 && $cb2 && $cb3) {
echo "Option 1 is pretty much essential, or your gerbil
could escape within the first few hours of ownership.";
} else if ($cb1 && $cb2 && !$cb3) {
echo "If you don't get him a water bottle, he may turn vicious.";
} else if (!$cb1 && !$cb2 && !$cb3) {
echo "Right, that's it, we're calling the RSPCA!";
}
等等......
答案 2 :(得分:0)
我想这些复选框以HTML格式显示。如果是这种情况,您可以使用jQuery:
$("input:checkbox[name=type]:checked").each(function()
{
// do your stuff here
});