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

如何使用PHP POST方法统计HTML表单Radio Button各值选中次数

PHP实现POST表单单选按钮选项选中次数统计

你的表单所有单选按钮均以q数组格式提交,单题答案固定为one/two/three/four/five五个值,直接遍历POST提交的答案数组累加计数即可实现需求,不需要提前固定题目总数,后续新增同结构题目不需要修改统计逻辑。

前置注意事项

  • 你原先定义的计数变量初始值为空字符串是错误写法,计数变量初始值必须设为整数0,否则累加计算时会出现类型异常
  • 原HTML表单的<form>标签重复写了两次class属性,第二个class定义会失效,建议合并为class="form-inline text-center"保证样式正常加载

check_result.php 实现代码

<?php
// 初始化各选项计数变量
$total_One_Count = 0;
$total_two_Count = 0;
$total_three_Count = 0;
$total_Four_Count = 0;
$total_Five_Count = 0;

// 校验请求类型与提交参数合法性,避免未定义索引报错
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['q']) && is_array($_POST['q'])) {
    // 遍历所有题目提交的答案
    foreach ($_POST['q'] as $selected_val) {
        $selected_val = trim($selected_val);
        // 匹配对应选项累加计数(PHP8.0+支持match语法)
        match($selected_val) {
            'one' => $total_One_Count++,
            'two' => $total_two_Count++,
            'three' => $total_three_Count++,
            'four' => $total_Four_Count++,
            'five' => $total_Five_Count++,
            default => null // 忽略非法传入值
        };
    }
}

// 统计完成后,你可以直接调用上述5个变量编写后续业务逻辑
// 示例调试输出:
// echo "one选项选中次数:".$total_One_Count."<br>";
// echo "two选项选中次数:".$total_two_Count."<br>";
?>

如果你使用的PHP版本低于8.0不支持match语法,把match部分替换为下面的switch写法即可:

switch ($selected_val) {
    case 'one':
        $total_One_Count++;
        break;
    case 'two':
        $total_two_Count++;
        break;
    case 'three':
        $total_three_Count++;
        break;
    case 'four':
        $total_Four_Count++;
        break;
    case 'five':
        $total_Five_Count++;
        break;
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 02:54:20