【发布时间】:2016-07-16 16:18:46
【问题描述】:
由于我为在 MySQL 中保存表单数据而编写的通用函数,我遇到了一个复杂的问题。 所有的表单都经过序列化后通过ajax发送:
$('.suggestSave, .buttonSave').on('submit', function(e) {
e.preventDefault();
var data = $(this).serialize();
...
然后我通过遍历值并创建保存在数据库中的数据来获取所有 POST 值:
$data = array();
foreach ($_POST as $param_name => $param_val) {
if($param_name != 'action' && $param_name != 'patient' && $param_name != 'jsaction') {
$name = sanitize($param_name);
$value = sanitize($param_val);
$data[$name] = $value;
}
}
自然不会发送未选中的复选框。问题是如果它是空的,我想为这个复选框存储 Int 值 0 而不是 1。 在 HTML 方面,我有一个经典的语法
<input type="checkbox" value="1" name="c_name1" checked/>
<input type="checkbox" value="1" name="c_name2"/>
关于如何处理该问题的任何建议?在一个复选框的情况下,我会检查帖子值是否为 isset(),但由于我通过循环获取名称和值......我没有想法......
【问题讨论】: