php/html 输入复选框的

php/html input checkbox's

不确定这个问题是否在某个地方得到了回答..已经搜索过它并找到了一些关于它的东西..但我真的不太理解我看到的答案并且可能会造成很大的困惑,因为我没有有使用这些语言的经验..

问题是我有一组 5 个复选框,我想在二进制输出中 post 例如:[0,0,1,1,0].

到目前为止,我已经通过应用隐藏输入解决方案(我以更静态的方式描述了它)来解决这个问题。因为我有很多来自数据库的东西,以及其他解释不通的东西对于这个问题..我认为)

$checkychecky = explode(",", [1,0,1,0,0] );
<input type="hidden" name="'.$row_perguntas[0].'[]" value="0"><input type="checkbox" onclick="this.previousSibling.value=1-this.previousSibling.value"'.$checked = ($checkychecky[0] == 1 ? "checked=\"checked\" " : "")/>'.$questionV[1].'

row_perguntas-> 来自给我显示名称的数据库

checkychecky -> temp var 存储值数组 [1,0,1,0,0]

中存在的值

questionV -> 数据库标签内容

工作正常..问题是当我转到另一个表单,然后返回到这个表单时,我得到了正确的数组值,设法选中了可见的复选框,但不确定如何处理隐藏字段.. 因为技术上它没有设置,我不按复选框.. 所以 onclick 不会触发.. 当我再次进入下一个表单时,我结束提交 [0,0,0,0, 0]

我该如何解决这个问题?已尝试在隐藏输入上使用 .. checkychecky:

<input type="hidden" name="'.$row_perguntas[0].'[]" value="0"'.$value= ($checkychecky[0] == 1 ? "value=\"0\" " : "1")

但完全没有成功:(

有什么想法吗?谢谢

解决了..

var checkBQ = ["c0q402","c1q402","c2q402","c3q402","c4q402","c0q408","c1q408","c2q408","c3q408","c4q408"];

        var checkBQLength = checkBQ.length;


        for (var i = 0; i < checkBQLength; i++) {
            if(document.getElementById(checkBQ[i]).checked){
                document.getElementById(checkBQ[i]).previousSibling.value = 1;
            }else{
                document.getElementById(checkBQ[i]).previousSibling.value = 0;
            }
        }