HTML表单提交问题

时间:2011-06-09 00:27:46

标签: php html forms

有谁能告诉我为什么这个表单没有正确地向服务器提交值?

  <form method="post" action="http://www.***.com/index.php/session/authenticate" class="form login" id="login_form"> 
    <div class="group wat-cf"> 
      <div class="left"> 
        <label class="label right">Login</label> 
      </div> 
      <div class="right"> 
        <input type="text" class="text_field" id="username"/> 
      </div> 
    </div> 
    <div class="group wat-cf"> 
      <div class="left"> 
        <label class="label right">Password</label> 
      </div> 
      <div class="right"> 
        <input type="password" class="text_field" id="password"/> 
      </div> 
    </div> 
    <div class="group navform wat-cf"> 
      <div class="right"> 
        <button class="button" type="submit"> 
          <img src="images/icons/key.png" alt="Save" /> Login
        </button> 
      </div> 
    </div> 
  </form> 

在服务器端,我回显了$_POST超全局,它是空的,我可以看到在提交表单时发送的请求标题:

Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Cache-Control:max-age=0
Connection:keep-alive
Content-Length:0
Content-Type:application/x-www-form-urlencoded
Cookie:ci_session=***session_id=***user_agent%22%3Bs%3A50%3A%22Mozilla%2F5.0+%28Macintosh%3B+Intel+Mac+OS+X+10_6_7%29+App%22%3Bs%3A13%3A%22last_activity%22%3Bi%3A1307578661%3B%7D31ee24db2875550081268dc7df883f76; ci_csrf_token=***
Host:www.***.com
Origin:http://**.com
Referer:http://***.com/index.php/session/login
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_7) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/*** Safari/534.30

3 个答案:

答案 0 :(得分:11)

您忘记为输入类型指定名称,例如

<input type="text" class="text_field" name="username" id="username"/> 

<input type="password" class="text_field" name="password" id="password"/> 

答案 1 :(得分:1)

input个代码没有name属性。我认为您使用的是id而不是name

例如

<input type="text" class="text_field" id="username"/>

应该是

<input type="text" class="text_field" id="username" name="username" />

或只是

<input type="text" class="text_field" name="username"/>

如果你没有使用id来做其他事情。

答案 2 :(得分:1)

这是在表单上提交的输入元素的name属性。使用name ='username'等