【问题标题】:Values not set in $_POST [closed]$_POST 中未设置的值[关闭]
【发布时间】:2014-06-21 19:14:16
【问题描述】:

我在index.php 上有一个登录表单和脚本。问题是 PHP 代码似乎没有拾取我输入的字段。

这是 PHP 代码:

<?php
    if(isset($_POST['user'])||isset($_POST['pass'])){
        ?>
            <script>
                $('#login-drop').addClass('open');
                console.log('Opening');
            </script>
        <?php
        if(isset($_POST['user'])){
            if(isset($_POST['pass'])){
                login();
            } else{
                ?>
            <script>
                $('#pass-group').addClass('has-error');
                console.log('Password has error.');
            </script>

                <?php
            }
        } else {
            ?>
            <script>
                $('#user-group').addClass('has-error');
                console.log('User has error');
            </script>
            <?php
        }
    } else {
        echo 'Nothing was entered'; 
    }

    function login(){
        echo 'Both username and password was entered.';
    }
?>

这是我的 HTML 表单:

        <form class="form-horizontal" method="post" action="?login">
              <fieldset>
                <legend>Log in</legend>
                <div class="form-group" id="user-group">
                  <label for="user" class="col-lg-2 control-label">Username</label>
                  <div class="col-lg-10">
                    <input class="form-control" id="user" placeholder="Username or Email" type="text">
                  </div>
                </div>
                <div class="form-group" id="pass-group">
                  <label for="pass" class="col-lg-2 control-label">Password</label>
                  <div class="col-lg-10">
                    <input class="form-control" id="pass" placeholder="Password" type="password">
                    <div class="checkbox">
                      <label>
                        <input type="checkbox"> Remember me
                      </label>
                    </div>
                  </div>
                 </div>
                 <div class="form-group">
                    <div class="col-lg-10 col-lg-offset-2">
                    <button class="btn btn-primary" type="submit">Log in</button>
                    </div>
                 </div>
                </fieldset>
        </form>

即使我输入了字段,它仍然显示Nothing was entered. 我看不到问题,但我往往会忽略很多事情。

附言。我正在使用 Bootstrap,所以这些类应该可以工作。我已经测试过了。

【问题讨论】:

标签: php html forms


【解决方案1】:

您需要提供输入元素names,否则它们的值不会被提交。 ids 也可能对您的 JavaScript 代码有用,但它们并不能解决这个问题。

所以你想做的是

<input name="user" id="user" ... >

【讨论】:

    【解决方案2】:

    您尚未将 "name" 属性添加到您的 &lt;input&gt; 标记中,即

    <input class="form-control" id="user" placeholder="Username or Email" type="text" name="user">
    

    【讨论】:

      猜你喜欢
      • 2011-08-16
      • 1970-01-01
      • 1970-01-01
      • 2020-12-28
      • 2012-02-23
      • 1970-01-01
      • 2012-10-24
      • 2017-10-22
      • 2013-11-08
      相关资源
      最近更新 更多