【问题标题】:Radio Buttons Table AS Submission Form单选按钮表 AS 提交表
【发布时间】:2013-02-08 21:46:23
【问题描述】:

我创建了一个单选按钮表,用户每列只能选择一个单选按钮。
我用相同的名字称呼每个 col。例如:我每行有 20 个收音机,所以每个 col 是 b1,b2,b3,b4 .....b20,选择工作但现在我需要将数据发送到 php 页面进行处理,现在我的问题是:我怎么知道例如如果我选择了@ b4 col 一台收音机,我怎么知道他是哪一行(我只有 4 个)。

这是我的代码:

$row = mysql_fetch_assoc($result);
echo "<table border='1'   cellspacing='0' cellpadding='0'>";
                        /** THEAD **/
    echo "<thead ><tr><th>".$StationHeader."</th>
    <th>".$OnlineStationHeader."</th>";
    for($k=1;$k<=20;$k++)
        echo "<th>".$k."</th>";
    echo "</tr></thead>";
                         /** THEAD **/
                         /** TBODY **/
    echo "<tbody>";
    for($i=1;$i<=4;$i++)
      {
       echo "<tr>";
       echo "<td>".$i."</td>";
       if($row['isWork']==1)
        echo "<td bgcolor='green'>ON</td>";
       else
        echo "<td bgcolor='red'>OFF</td>";
        for($j=1;$j<=20;$j++)
            {
                if($row['b'.$i.''])
                    echo "<td><input type='radio' name='b".$j."' selected/></td>";
                else
                    echo "<td><input type='radio' name='b".$j."' /></td>";
            }

        echo "</tr>";
        }
    echo "</tbody>";
                      /** TBODY **/
    echo "</table>";

每一行都是一个站(这代表我数据库中的表),现在我想更新我的数据库中的表。

1.我需要更改按钮的命名方式吗?
2.提交时如何知道单选按钮被选中的那一行?

ps(我还没有插入表单标签)。
谢谢。

**EDIT - 更新了代码**

echo "<form name='bakara' action='updateBakara.php' method='post'>";



  echo "<table border='1' cellpadding='12'   cellspacing='0' cellpadding='0'>";
                        /** THEAD **/
    echo "<thead ><tr><th>".$StationHeader."</th>
    <th>".$OnlineStationHeader."</th>";
    for($k=1;$k<=20;$k++)
        echo "<th>".$k."</th>";
    echo "</tr></thead>";
    $j=1;

    while ($tableRow = mysql_fetch_assoc($result)) { // Loops 4 times if there are 4 returned rows... etc
        echo "<tr>";
        $i=0;

    foreach ($tableRow as $key => $value) { // Loops 22 times because there are 22 columns
    if($i>1){
    if($value==1)
                    echo "<td><input type='radio' name=b".$i." value=".$j." checked/></td>";
                else
                    echo "<td><input type='radio' name=b".$i." value=".$j." /></td>";
        }
    else{
    if($i==1)
        if($value==1)
        echo "<td bgcolor='green'>ON</td>";
        else
        echo "<td bgcolor='red'>OFF</td>";
    else
        echo "<td>".$value."</td>";

        }
        $i=$i+1;

}

$j=$j+1;
echo "</tr>";
}

    echo "</tbody>";
                      /** TBODY **/
    echo "</table>";
    echo "<input type='submit' value=".$SendButton." onclick='this.form.submit():'>";
        echo "</form>"; 

当我提交此表单时,我收到未知索引错误 b1,b2,b3,b4 我的代码有问题吗?

【问题讨论】:

    标签: php jquery radio-button


    【解决方案1】:

    在此模式中为您的单选按钮设置值

    name="b1" value="1"   |   name="b2" value="1"   |   ....
    name="b1" value="2"   |   name="b2" value="2"   |   ....
    name="b1" value="3"   |   name="b2" value="3"   |   ....
    name="b1" value="4"   |   name="b2" value="4"   |   ....
    

    现在在 php 中获取您的价值

    $b1_value = $_POST['b1'];
    $b2_value = $_POST['b2'];
    

    并更新您的数据库

    【讨论】:

    • 我需要在哪里放置表单标签?
    • 表外
      ...
    • 我再次编辑问题,我根据需要放置表单标签,我得到错误未知索引 b1,b2,....
    • 您的单选输入字段名称无效,name='b".$i."'
    猜你喜欢
    • 2023-03-29
    • 2013-01-21
    • 2013-04-10
    • 1970-01-01
    • 2013-03-28
    • 1970-01-01
    • 2012-05-05
    • 2013-01-09
    • 2014-03-23
    相关资源
    最近更新 更多