2013-10-21 36 views
0

我有以下HTML5格式的任何數據:HTML5表單提交不

<form action="/desired_worktimes/submit" method="post"> 
    <div class="month"> 
     <h2>October</h2> 
     <div class="week"> 
     <h3>2013-10-21–2013-10-21</h3>  
     <p> 
      <span>Mon</span> 

      <label for="from-2013-10-21">From</label> 
      <input type="time" id="from-2013-10-21" /> 

      <label for="to-2013-10-21">To</label> 
      <input type="time" id="to-2013-10-21" /> 

      <label for="free-2013-10-21">Free</label> 
      <input type="checkbox" id="free-2013-10-21" /> 

     </p> 
     </div> 
    </div> 

    <button type="submit">Submit</button> 
    </form> 

當我點擊提交,沒有任何數據到達後端點。我使用Postman測試了服務器,它顯示了提交給端點的所有表單數據,但是使用上面的表單,我什麼也沒得到。

表單有什麼問題?

+2

我在任何地方都看不到'name'屬性 –

+0

可能的[如果輸入標籤沒有名稱,表單數據仍然會傳輸]的重複項(https://stackoverflow.com/questions/12543848/does-form-data -still-transfer-if-the-input-tag-has-no-name) –

回答

4

您必須爲每個輸入使用name屬性。例如:<input type="time" id="from-2013-10-21" name="abc"/>。要獲得這些輸入的值,只需使用$_POST['abc']

+0

哇。現在我記得想知道爲什麼在閱讀表格介紹時需要冗餘。愚蠢的錯誤。 – Profpatsch

1

檢查你的代碼的最後一行,你也沒有包括name屬性在任何表單字段:

取而代之的是:

<button type="submit">Submit</button> 

它應該是這樣的:

<input type="submit" value="submit"> 
+0

但是...它是HTML5?! – Profpatsch

+0

如果你使用html5,那麼你可以繼續你的語法並忽略我的,雖然兩者都是有效的。但不要忘記輸入所有表單域的'name'屬性。:) –