PHP:获取单选按钮的值并将其存储到数据库中

时间:2013-07-18 18:10:29

标签: php

之前我从未真正使用过单选按钮。所以我想要实现的是,使用两个单选按钮'Public'和'Private'。这是针对用户的个人资料。我的按钮的HTML代码是;

<div class="btn-group" data-toggle="buttons-radio">
    <button type="button" class="btn btn-primary" id="privacy" name="privacy"   value="0">Private</button>
    <button type="button" class="btn btn-primary" id="privacy" name="privacy"   value="1">Public</button>
</div>

对于PHP,我不确定如何获取值并存储它。任何帮助表示赞赏!

5 个答案:

答案 0 :(得分:4)

使用表格。

<form method="get" action="yourscript.php">

  <input type="radio" id="private" name="privacy" value="0">
  <label for="private">Private</label>

  <input type="radio" id="public" name="privacy" value="1">
  <label for="public">Public</label>

  <input type="submit" value="Save">

</form>

将您的按钮更改为input元素,这些元素与表单一起提供了一种HTML本机方式,可以在不需要Javascript的情况下将数据发送到脚本(尽管您可以在以后使用Javascript来增强可用性)

使用label标记,您可以为radiobutton分配文本。这样也可以点击这个文本,它也为屏幕阅读器提供了更好的支持,因为它们实际上可以看到哪些文本属于无线电按钮。

id必须是唯一的,因此我将其更改为privatepublic。 ID还用于将标签链接到。

name确定将值发送到脚本的名称。

在PHP中,您可以使用超全局$_GET$_GET['privacy']将包含'0''1',具体取决于所做出的选择。如果表单的方法是post,您可以使用超级全局$_POST,或者您可以使用$_REQUEST,其中包含来自其中任何一个的值,因此在这种情况下您的脚本不会关心值是在url(get)中发送还是在与请求一起发送的不可见发布数据块中发送。

答案 1 :(得分:0)

我假设你的表格如下。

    <form name="sample" action="form_submit.php" method="POST">
    <div class="btn-group" data-toggle="buttons-radio">
    <input type="button" class="btn btn-primary" id="private" name="privacy"   value="0">Private</input>
    <label for="private">Private</label>
        <input type="button" class="btn btn-primary" id="public" name="privacy"   value="1">Public</input>
    <label for="public">Public</label>
    </div>
    <input type="submit" name ="submit" value ="Submit"/>
    </form>

您可以在操作(form_submit.php)中使用以下代码来获取所选的单选按钮值。

form_submit.php

<?php

$selected_radio = $_POST['privacy'];
print $selected_radio;

?>

确保您没有复制ID,因为它们应该是唯一的。

答案 2 :(得分:0)

将类型更改为radio,并且不要对多个元素使用相同的ID,ID应该是唯一的

另外,当您发布表单type=button时,不会使用表单

传递值
<div class="btn-group" data-toggle="buttons-radio">
<input type="radio" class="btn btn-primary" name="privacy"   value="0"/>Private
<input type="radio" class="btn btn-primary" name="privacy"   value="1"/>Public
</div>

答案 3 :(得分:0)

假设其在$_POST['privacy']上发布应包含10

也不要使用ID两次 - 它们应该是唯一的

答案 4 :(得分:0)

您没有formsubmit按钮。

HTML页面

<div class="btn-group" data-toggle="buttons-radio ">
  <form name="privacyForm" action="action.php" method="post">
    <button type="radio" class="btn btn-primary" name="privacy" value="0">Private</button>
    <button type="radio" class="btn btn-primary" name="privacy" value="1">Public</button>
    <input type="submit" value="Submit">
  </form>
</div>

<强> action.php的

<?php
  echo $_POST['privacy']; // should be 0 or 1
?>