2010-04-14 25 views
0

我有一個窗體上有兩個按鈕,一個是,一個不是,並且此時我將點擊的按鈕捕獲到數據庫中,但由於某種原因,它並不總是捕捉點擊按鈕,我已經通過我的所有代碼消失了,似乎一切都很好,這裏是表單提交捕獲到數據庫不工作

  <div id="mid_prompt"> 
      <form action="refer.php" method="post" onsubmit="return submit_form()" > 
      <div class="prompt_container" style="float: left;"> 
        <span class="prompt_item"><input type="image" src="images/yes.jpg" alt="submit" name="refer" value="yes" /></span> 
      </div> 
      </form> 

      <form action="thank_you.php" method="post" onsubmit="return submit_form()" > 
      <div class="prompt_container" style="float: right;"> 
        <span class="prompt_item"><input type="image" src="images/no.jpg" alt="submit" name="refer" value="no" /></span> 
      </div> 
      </form> 
     </div> 

我使用會話進行變量一路的形式結束,我那麼寫的所有形式數據到數據庫,我檢查了我的會話,他們似乎工作正常,唯一給出問題的是yes/no。

所以基本上我需要它捕捉是/否每次。

Thanx提前!

回答

1

如果有人點擊「輸入」提交表單,它將無法捕獲此按鈕。如果這是一個數據項,最好以不同的方式捕捉它,因爲這隻有在點擊按鈕或在點擊回車之前聚焦按鈕時才起作用。

敲擊輸入以提交表單是瀏覽器的默認行爲,儘管基於表單大小和字段類型的一些變化(例如,textarea不會在輸入時提交,但input type =「text」將提交在進入)。

也許添加一個複選框來捕獲這個數據項。

+0

好吧,我明白了,thanx很多信息!我會嘗試解決那個問題,並讓你們貼出來! – Odyss3us 2010-04-14 14:52:55

0

你的db結構如何。列存儲是布爾型還是整數(可能是1或0)或varchar(3)?你需要使用varchar(3)來存儲「是」。你可以通過$ _POST ['refer']來捕獲。

+0

它是varchar(3)捕獲它爲「是」或「否」,此刻我將它捕獲爲$ _POST ['參考']。 – Odyss3us 2010-04-14 14:51:14

0

注意IE < 8將忽略的「價值」的任何<input type="image">

屬性沒有一種變通方法,唯一的選擇是不使用<input type="image">,或過載的name屬性和檢查特定的(注意你仍然需要一個值屬性,否則一些瀏覽器將不會發送任何東西)

+0

或者您可以使用隱藏的輸入值,並將表單提交到輸入類型圖像。 – 2010-04-14 14:08:28

+0

噢好吧,不知道,我會嘗試添加隱藏的輸入。 – Odyss3us 2010-04-14 14:52:05