Php表单发布方法不发送数据

时间:2015-10-30 06:02:58

标签: php html forms post get

我有一个简单的HTML表单,它实际上在我的localhost和少数服务器上运行良好。但是上次我把它放在我的代码中时,我知道它不会使用POST发送数据,尽管我写了method="post"。这是我第一次遇到这个问题,我不知道它是来自我的身边还是来自服务器。 当我在我的localhost中转储GLOBAL param $_SERVER时,参数REQUEST_METHODPOST,但当我将其转储到服务器上时,它是GET。我还尝试在.htaccess中更改方法,但没有结果。 这是我的表格:

<form action="/auth/login" method="post">
      <div id="error">
            <?
              if (isset($errors)) {
                 foreach ($errors as $error) {
                      echo $error . "<br>";
                  }
               }
               if (isset($invalid)) {
                    echo $invalid;
                }
               ?>
      </div>
      <div id="login-box-name" style="margin-top:20px;">Login:</div>
      <div id="login-box-field" style="margin-top:20px;">
           <input name="login" class="form-login" type="text"/>
       </div>
       <div id="login-box-name">Password:</div>
       <div id="login-box-field">
            <input name="password" type="password" class="form-login"/>
        </div>
        <br />
        <input type="image" src="/images/login-btn.png" width="103" height="42" style="margin-left:90px;" />
   </form>

当我打印$_POST$_POST['login']时,在服务器上它们是空的,虽然我已经通过了params。

 public function action_login() {  
        echo "<pre>";
        var_dump($_SERVER); // this is returns server data, where REQUEST_METHOD is GET on current server, but POST in my local 
        var_dump($_POST); // this is empty
        echo "</pre>";
}

是来自服务器还是托管配置?

2 个答案:

答案 0 :(得分:-1)

试试这个

<form action="auth/login" method="POST">
          <div id="error">
                <?
                  if (isset($errors)) {
                     foreach ($errors as $error) {
                          echo $error . "<br>";
                      }
                   }
                   if (isset($invalid)) {
                        echo $invalid;
                    }
                   ?>
          </div>
          <div id="login-box-name" style="margin-top:20px;">Login:</div>
          <div id="login-box-field" style="margin-top:20px;">
               <input name="login" class="form-login" type="text"/>
           </div>
           <div id="login-box-name">Password:</div>
           <div id="login-box-field">
                <input name="password" type="password" class="form-login"/>
            </div>
            <br />
            <input type="submit" src="/images/login-btn.png" width="103" height="42" style="margin-left:90px;" value="save" />
       </form>

答案 1 :(得分:-1)

你缺少关键词:type =&#34;提交&#34;