单选按钮阵列 - 需要帮助

时间:2011-05-25 20:24:37

标签: php mysql html if-statement radio-button

我有一个需要帮助的单选按钮阵列。这是代码:

            <input type="radio" name="radio" id="academic" value="1"<?php
                    if ($row_EventInfo['academic'] == '1') {
                    echo ' checked="checked"';
                    }
                    else {$row_EventInfo['academic'] = '';}
                    ?>>
        <label for="academic">Academic</label><br />

        <input type="radio" name="radio" id="personal" value="1"<?php
                    if ($row_EventInfo['personal'] == '1') {
                    echo ' checked="checked"';
                    }
                    else {$row_EventInfo['personal'] = '';}
                    ?>>
        <label for="personal">Personal</label><br />

        <input type="radio" name="radio" id="diversity" value="1"<?php
                    if ($row_EventInfo['diversity'] == '1') {
                    echo ' checked="checked"';
                    }
                    else {$row_EventInfo['diversity'] = '';}
                    ?>>
        <label for="diversity">Diversity</label><br />

我想要做的就是这个。我的数据库表中有一个列用于每个单选按钮,因为我们必须单独输入它们。但是,我希望他们一次只能选择其中一个按钮。我将所有名称都改为相同(“无线电”),但由于PHP MYSQL使用名称来知道在表中发布信息的位置,因此不知道在哪里发布。

有没有办法创建一个if语句来告诉它只允许一次选择一个按钮并保持数据库表的输入分开?

如果您需要澄清,请告诉我。谢谢!

3 个答案:

答案 0 :(得分:1)

将值设置为列名,例如

<input type="radio" name="radio" id="diversity" value="diversity"

在php端,只需执行类似

的操作
$sql = "UPDATE table SET {$_POST['radio']} = 1";

答案 1 :(得分:0)

这是一种形式,对吗? 然后你在POST中获得数据。我不会将值设置为1,将值设置为您要选择的值,例如 然后在帖子中,获取值并使用它来设置数据库中的数据。

希望这有帮助!

BR,

TJ

答案 2 :(得分:0)

如果您使用:

<input type="radio" name="radio" id="diversity" value="value1">
<input type="radio" name="radio" id="diversity" value="value2">
<input type="radio" name="radio" id="diversity" value="value3">
<input type="radio" name="radio" id="diversity" value="value4">

它将在$_POST['radio'];中提供您所选择的单选按钮。 eg.value3不要通过命名具有相同名称的输入类型来混淆自己

如果您使用:

<input type="radio" name="myradio" id="diversity" value="value1">

它将在$_POST['myradio'];

中提供

等等

加上你可能想要研究使用三元运算符

if ($row_EventInfo['diversity'] == '1') {
    echo ' checked="checked"';
}
else {$row_EventInfo['diversity'] = '';}

echo ($row_EventInfo['diversity'] == '1') ? ' checked="checked"':'';