从键值对中提取表单数据

时间:2015-09-29 20:03:49

标签: php post

我正在尝试处理来自表单的数据(如果重要的话,请填写复选框)。

POST的输出类似于" buzz:on,asdf:on,userid:1"。

if(isset($_POST['userid']))
{
    $postedUserID = $_POST['userid'];
    foreach ($_POST as $key => $value)
    {
        switch($key)
        {
            case "buzz":
                $old_services = get_user_meta($postedUserID, 'whatservices', true);
                $updated_services = $old_services . " buzz";
                update_user_meta($postedUserID, 'whatservices', $updated_services);
                break;
            default:
                echo "Something is wrong.";
        }
    }
}

我想我只是把自己与开关和键值对混淆了一下。当 $ _ [' buzz'] = 时,如何让开关启动?

(我使用开关的原因是因为这最终会有很多条件,> 20。)

1 个答案:

答案 0 :(得分:2)

也许你需要这个:

foreach ($_POST as $key => $value)
{    
    switch($key)
    {
        case "buzz":
            if ($value == 'on') {
                // do something
            }
            break;
        // more cases
     }
}