You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Codeigniter4 单选按钮选中后提交数据到数据库失败求助

问题原因及修复方案

1. 视图层代码错误

你将单选按钮的checked属性判断逻辑错误嵌入到了name属性的定义中,导致三个单选按钮的name属性不一致,选中值无法正常传递到后端;且原代码缺失提交按钮,表单无法正常触发提交。
修正后代码:

<?php echo form_open('home/saveCovid') ?>
<!-- 无文件上传需求无需使用form_open_multipart,若有上传需求可改回 -->
<?php 
 for ($i=1; $i <=1; $i++){
 ?>
 <input type="radio" name="anotasi1" value="Positif" <?php echo isset($anotasi->anotasi) && $anotasi->anotasi == "Positif" ? "checked" : "" ?>>Positif<br>
 <input type="radio" name="anotasi1" value="Negatif" <?php echo isset($anotasi->anotasi) && $anotasi->anotasi == "Negatif" ? "checked" : "" ?>>Negatif<br>
 <input type="radio" name="anotasi1" value="Netral" <?php echo isset($anotasi->anotasi) && $anotasi->anotasi == "Netral" ? "checked" : "" ?>>Netral<br>
<?php
 }
  ?>
  <!-- 新增提交按钮 -->
  <button type="submit">提交标注</button>
 </td>
 </tr>
        <?php } ?>
</div>

2. 控制器逻辑缺失

你仅在控制器中获取了提交的单选值,没有调用模型的插入方法将数据写入数据库,自然无法完成数据存储。
修正后代码:

public function saveCovid()
{
    // 接收提交值,加判断避免空数据
    $data['anotasi1'] = $this->input->post('anotasi1');
    // 此处替换为你实际的模型类名,若已全局加载模型可省略load步骤
    $this->load->model('xxx_model');
    // 调用模型插入方法
    $this->xxx_model->add($data);
    // 插入完成后跳转,可替换为你需要返回的页面地址
    redirect(base_url('home/index'));
}

额外注意项

  • 确认你的数据库表tbl_anotasi中存在名为anotasi1的字段,字段类型为字符串且长度足够存储选项内容
  • 可新增表单验证逻辑,强制用户必须选中单选按钮后才能提交,避免空数据入库

内容的提问来源于stack exchange,提问作者Zelpe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 15:54:06