请仔细阅读我的问题,这有点棘手。
下面的函数用于显示是否在我的“添加”和“编辑”记录页面上的表单中选中了复选框。这里没问题。
问题:假设我有 2 个字段“名称”和“启用”。只有经过验证的字段是“名称”。当用户编辑现有记录并输入无效的“名称”时,表单将得到验证。如果用户取消选中“启用”复选框(之前的值是 $field_record_value="1",从数据库设置),复选框值仍然设置为“1”,因为它仍然来自数据库。
问题:当数据库记录 ($field_record_value) 设置为 1 时,如何将值设置为“0”?
我知道问题在于这段代码:
$is_checked = isset($field_record_value) ? $field_record_value : '0';
我似乎无法弄清楚,也许是因为我在这上面花了大约 2 个小时,而且我的大脑被炸了..但我离题了 :)
//------------------------------------------------
// Function to check if checkbox is selected
//------------------------------------------------
function form_checkbox_selected($field_name, $page = 'add', $field_record_value = '0')
{
if(!empty($_POST[$field_name]) && intval($_POST[$field_name]))
{
$is_checked = '1';
}
else
{
if($page ==' edit')
{
$is_checked = isset($field_record_value) ? $field_record_value : '0';
}
else
{
$is_checked = '0';
}
}
return $is_checked;
}