单选按钮在php中给出错误的值

时间:2018-11-26 09:34:32

标签: php html forms session

因此,我试图将登录和注册页面合二为一。如果要登录或注册,我使用单选按钮获取值。 这是单选按钮的代码;

        <div class="form-check">
            <input class="form-check-input" type="radio" name="check" id="check" value="1">
            <label class="form-check-label" for="check">Register</label>
            <br>
            <input class="form-check-input" type="radio" name="check" id="check" value="0" checked>
            <label class="form-check-label" for="check">Login</label>
        </div>

因此,我正在检查$_POST['check']的值是0还是1。但是以某种方式它只是忽略了这一点,并且总是注册。这是我的php代码;

session_start();
if (isset($_POST['username'])) {
   $value = $_POST['check'];
   // Do some stuff here
   if ($value == 1) {
      // register
   } elseif ($value == 0) {
      // login
   } else {
      // Do something for bad results
   }
}

以某种方式,当我检查login时,它想注册,但是当我单击注册时,它仍然注册。这里出了什么问题对吗?

1 个答案:

答案 0 :(得分:-2)

id的元素必须唯一

代码应如下所示

    <div class="form-check">
        <input class="form-check-input" type="radio" name="check" id="check_1" value="1">
        <label class="form-check-label" for="check_1">Register</label>
        <br>
        <input class="form-check-input" type="radio" name="check" id="check_0" value="0" checked>
        <label class="form-check-label" for="check_0">Login</label>
    </div>