【问题标题】:HTML radio button naming for multiple groups多个组的 HTML 单选按钮命名
【发布时间】:2012-01-31 07:40:27
【问题描述】:

我正在开发一个 PHP 网站,它会生成多个批准请求。

我的审批页面只有一个表单和一个保存按钮,我想为每个请求使用 2 个单选按钮。

这是我想象的样子的链接:link

在 PHP 方面,我可以生成表单并为单选按钮分配不同的名称。我的问题是我应该给单选按钮起什么名字,以便我能够将它们与 PHP 端的特定成员相关联?还是我需要为单选按钮设置值?

我将如何做到这一点?

如果您有更好的解决方案来处理这种情况,我也愿意接受。

谢谢

【问题讨论】:

    标签: php layout radio-button grouping naming


    【解决方案1】:

    每个用户都有一个唯一的 user_id, 当您在页面中为每个其他用户显示单选按钮组,并希望在 php 中访问时, 在数组中命名它们的基本方法,索引作为它们的 user_id

    <input type="radio" value="1" name="acceptance['uid1']"/>Approve<br />
    <input type="radio" value="0" name="acceptance[uid1]"/>Deny
    
    <input type="radio" value="1" name="acceptance['uid2']"/>Approve<br />
    <input type="radio" value="0" name="acceptance[uid2]"/>Deny
    
    <input type="radio" value="1" name="acceptance['uid3']"/>Approve<br />
    <input type="radio" value="0" name="acceptance[uid3]"/>Deny
    

    在php中

    foreach($_POST['acceptence'] as $uid=>$acpt)
    {
    ..Do whatever
    }
    

    我希望这会有所帮助..如果需要其他内容请发表评论..

    【讨论】:

    • 这已经非常接近我想要的了。还有一件事需要解决:页面上可能有同一个用户的多个请求。即一个请求访问论坛另一个成为管理员。
    • 在这种情况下,为不同的目的制作单独的数组......即:请求访问:access_acceptance[uid],请求成为管理员:admin_acceptance[uid]..etc..etc.. .I php 为单独的数组创建单独的 foreach 循环......这样进一步的数据操作也将变得非常容易......如果需要更多,请不要忘记......否则,如果您认为它已解决,请接受答案
    【解决方案2】:

    你在这里:

    <input type="radio" value="approve" name="acceptance"/>Approve<br />
    <input type="radio" value="deny" name="acceptance"/>Deny
    

    对于单选按钮,它们应该命名相同并具有不同的值来分组。

    更新

    对我来说,我将为每个单选组按钮添加行 ID。例如

    <input type="radio" value="19" name="acceptance1"/>Approve<br />
    <input type="radio" value="0" name="acceptance1"/>Deny
    ...
    <input type="radio" value="21" name="acceptance2"/>Approve<br />
    <input type="radio" value="0" name="acceptance2"/>Deny
    ...
    <input type="radio" value="23" name="acceptance5"/>Approve<br />
    <input type="radio" value="0" name="acceptance5"/>Deny
    

    假设我们每页有 5 行,并且每个批准单选按钮都包含数据库中记录的 ID。

    <?php
        $approve = array();
        for($i=1;$i<=5;$i++)
            $approve[] = $_POST['acceptance'.$i];
    ?>
    

    然后您将获得批准选择的行(即值!=0)。希望这会有所帮助

    【讨论】:

    • 但是,当我在页面上有几个这样的成员时,如何将其链接到 php 端的特定成员?我需要以某种方式为每个请求包含成员 ID。
    • 如果名字相同,一次只能选择一个,当你提交表单时(例如通过POST),$_POST['acceptance']将只返回一个值。
    • 好的。但这正是问题所在。我需要几个单选按钮组。
    • @MichaelFrey 我想,但对我来说,更改为复选框更容易。
    猜你喜欢
    • 2011-03-12
    • 2013-06-15
    • 2019-10-04
    • 1970-01-01
    • 1970-01-01
    • 2015-08-27
    • 1970-01-01
    • 2012-03-06
    • 2012-07-22
    相关资源
    最近更新 更多