我在表单中有一组带有提交按钮的复选框。
<form name="form" method="POST">
<input type="checkbox" name="3" value="3">
<input type="checkbox" name="7" value="7">
<input type="checkbox" name="5" value="5">
<input type="checkbox" name="12" value="12">
<input type="submit" name="submit-form">
</form>
<?php
if (isset($_REQUEST['submit-form'])) {
}
?>
...
代码中当前的名称/值是动态生成的,需要保留(名称或值都可以)。
提交表单时,我想将已复选复选框的值或名称添加到PHP变量(以逗号分隔)作为字符串。
对于我应放在if括号中的代码的任何帮助都将非常感激。
提前致谢。
答案 0 :(得分:1)
如果可能,请使用name =“myValues []”,在POST之后,$ _POST ['myValues']将包含所有已选择值的数组。然后你可以进行内爆(“,”,$ _POST ['myValues'])将它们连接成1个字符串。
示例:
<form name="form" method="POST">
<input type="checkbox" name="options[]" value="3">
<input type="checkbox" name="options[]" value="7">
<input type="checkbox" name="options[]" value="5">
<input type="checkbox" name="options[]" value="12">
<input type="submit" name="submit-form">
</form>
...
<?php
if (isset($_REQUEST['submit-form']) && !empty($_POST['options'])) {
$myOptions = implode(", ", $_POST['options']);
}
&GT;
答案 1 :(得分:1)
HTML:
<input type="checkbox" name="checkboxarr[]" value="3">
PHP:
<?php if (isset($_REQUEST['submit-form'])) { print_r($_POST); } ?>
答案 2 :(得分:1)
使用数组为您的复选框指定正确的名称。然后使用该名称获取值并内爆以检索字符串
<form name="form" method="POST">
<input type="checkbox" name="chk[]" value="3">
<input type="checkbox" name="chk[]" value="7">
<input type="checkbox" name="chk[]" value="5">
<input type="checkbox" name="chk[]" value="12">
<input type="submit" name="submit-form">
</form>
<?php
if (isset($_REQUEST['submit-form'])) {
$checkbox_val = $_POST["chk"];
$checkbox_val = implode(",", $checkbox_val);
echo $checkbox_val;
}
答案 3 :(得分:1)
您可以对复选框使用相同的名称,如下面的代码所示:
<form name="form" method="POST">
<input type="checkbox" name="numbers[]" value="3">
<input type="checkbox" name="numbers[]" value="7">
<input type="checkbox" name="numbers[]" value="5">
<input type="checkbox" name="numbers[]" value="12">
<input type="submit" name="submit-form">
</form>
在使用过程中,您可以使用以下代码粘贴所有选中的复选框:
if (isset($_REQUEST['submit-form'])) {
$allSelectedNumbers = implode(",", $_REQUEST['numbers']);
}
答案 4 :(得分:1)
这里有很多好的答案,但只是为了回答你的问题,如果修改HTML不是你的选择。
<?php
if (isset($_REQUEST['submit-form'])) {
unset($_POST['submit-form']);
echo implode( ',', $_POST );
}