具有相同名称的多个隐藏输入,始终检索最后一个输入[重复]

2024-03-05

   foreach ($graphEdge as $graphNode) {
    echo
      "<div class='form-check mb-3'>" .
        "<input type='radio' name='fb_profile' class='form-check-input' value='".$graphNode['name']."'>" .
        "<img class='mr-2' src='" . $graphNode['picture']['url'] . "'>" . 
        "<label class='form-check-label' for='fb_profile'>" . 
        $graphNode['name'] . '</label>' . 
      "</div>";

    echo "<input type='hidden' name='fb_access_token' value='" . $graphNode['access_token'] . "'>";
    echo "<input type='hidden' name='fb_id' value='" . $graphNode['id'] . "'>";
    }

正如标题所示,我有 3 个名为“fb_id”的隐藏输入,当我在表单中 POST 时,将始终检索最后一个隐藏输入,而 fb_access_token 将始终正确 POST。


好的。正如我从谈话中看到的,你想要获得价值观,这取决于radio。 你可以这样做:

foreach ($graphEdge as $graphNode) {
    echo
        "<div class='form-check mb-3'>" .
            "<input type='radio' name='fb_profile' class='form-check-input' value='".$graphNode['name']."'>" .
            "<img class='mr-2' src='" . $graphNode['picture']['url'] . "'>" . 
            "<label class='form-check-label' for='fb_profile'>" . 
    $graphNode['name'] . '</label>' . 
        "</div>";

   echo "<input type='hidden' name='fb_access_token[".$graphNode['name']."]' value='" . $graphNode['access_token'] . "'>";
   echo "<input type='hidden' name='fb_id[".$graphNode['name']."]' value='" . $graphNode['id'] . "'>";
}

然后你可以通过以下方式获取选定的值radio像这样的值(假设您的表单发送 POST 请求):

$profile = $_POST['fb_profile'];
$accessToken = $_POST['fb_access_token'][$profile];
$id = $_POST['fb_id'][$profile];
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

具有相同名称的多个隐藏输入,始终检索最后一个输入[重复] 的相关文章