从服务器读取的每一行的独立单选按钮

问题描述 投票:0回答:2

我目前正试图为从服务器读取的每一行生成独立的单选按钮。它们应该是象征着开和关的开关。我目前的问题是,我设法为每一行生成按钮,但这些按钮不是独立的。我一次只能关闭或打开一个。

我知道,当每个单选按钮的名称不同时,单选按钮才会真正 "独立"。但我似乎想不出如何为每一行生成一个新的名称。

目前我的代码是这样的

    res = $db->query($query);
            if ($res->num_rows > 0) {
                while ($row = $res->fetch_object()) {
                  $query = "SELECT * FROM device_status
                            WHERE device = ($row->id)";
                  $status = $db->query($query);
                  $device_status = $status->fetch_object();
              $content .= <<<END
            <tr>
                <td>{$row->devices}</td>
                <td>{$row->description}</td>
                <td>{$row->room}</td>
                <td><input type='radio' name='radiobutton' id='myCheck'></td>
                <td><input type='radio' name='radiobutton' id='myCheck' checked='checked'></td>
                <!-- <td>{$device_status->status}</td> -->
                <td><a href="delete-device.php?id=$row->id">Delete</a>
                <a href="edit-device.php?id=$row->id">Edit</a></td>
            </tr>
END;
                        }
                    }
    echo $content;

我一直在尝试不同的方法,比如使用 <td><input type='radio' name='$row->id' id='myCheck'></td>

但一直没有得到解决。任何关于如何解决这个问题的帮助是非常感激的。

谢谢你!我目前正试图为从服务器读取的每一行生成独立的单选按钮。

php html mysql
2个回答
1
投票

如果你想为所有生成的复选框取一个唯一的名字,你可以通过增加 $i 为每一行。

res = $db->query($query);
            if ($res->num_rows > 0) {
                  $i = 0;
                while ($row = $res->fetch_object()) {
                  $query = "SELECT * FROM device_status
                            WHERE device = ($row->id)";
                  $status = $db->query($query);
                  $device_status = $status->fetch_object();
              $content .= <<<END
            <tr>
                <td>{$row->devices}</td>
                <td>{$row->description}</td>
                <td>{$row->room}</td>
                <td><input type='radio' name='radiobutton<?php echo $i?>' id='myCheck'></td>
                <td><input type='radio' name='radiobutton<?php echo $i?>' id='myCheck' checked='checked'></td>
                <!-- <td>{$device_status->status}</td> -->
                <td><a href="delete-device.php?id=$row->id">Delete</a>
                <a href="edit-device.php?id=$row->id">Edit</a></td>
            </tr>
            END;
            $i++;
                        }

                    }
    echo $content;

0
投票

如果你不在乎单选按钮的名字,你可以使用一个 "php随机数生成器",每一行你都给你的单选按钮名字指定一个新的随机数。

<?php $x = rand(5, 100000); ?> <input type='radio' name='<?php echo $x; ?>' id='myCheck'> 
© www.soinside.com 2019 - 2024. All rights reserved.