2011-03-25 32 views
6

我想使用HTML網頁A-Z按鈕等如下所示(僅樣品和幾個字)如何發佈按鈕值到PHP?

<INPUT TYPE="BUTTON" VALUE=" A " ONCLICK="A"> 
<INPUT TYPE="BUTTON" VALUE=" B " ONCLICK="B"> 
<INPUT TYPE="BUTTON" VALUE=" C " ONCLICK="C"> 
<INPUT TYPE="BUTTON" VALUE=" D " ONCLICK="D"> 
<INPUT TYPE="BUTTON" VALUE=" E " ONCLICK="E"> 
<INPUT TYPE="BUTTON" VALUE=" F " ONCLICK="F"> 
<INPUT TYPE="BUTTON" VALUE=" G " ONCLICK="G"> 
<INPUT TYPE="BUTTON" VALUE=" H " ONCLICK="H"> 
<INPUT TYPE="BUTTON" VALUE=" I " ONCLICK="I"> 
<INPUT TYPE="BUTTON" VALUE=" J " ONCLICK="J"> 

當我點擊每個按鈕我想在按鈕各自的值張貼到PHP變量。

我該怎麼做?

+2

'ONCLICK ='用於Javascript。在那裏再次列出值是不必要的。 – mario 2011-03-25 21:18:38

+0

您確實需要小寫所有這些標籤屬性。 'input'而不是'INPUT'。 – crmpicco 2014-07-30 10:54:45

回答

12

更改typesubmit並給它一個name(和刪除無用onclick和將90年代風格的大寫標籤/屬性扁平化)。

<input type="submit" name="foo" value="A" /> 
<input type="submit" name="foo" value="B" /> 
... 

的值將是可用的由$_POST['foo'](如果父<form>具有method="post")。

+1

但它的類型是「按鈕」而不是「提交」?我嘗試過使用類型按鈕和$ _POST,但不起作用 – 2013-01-09 13:53:15

+2

@baTimá:然後,使用'type =「submit」',正如答案中所述。 – BalusC 2013-01-09 13:57:27

+0

但在我的表格中,我已經有一個提交按鈕,所以我不能有2提交 – 2013-01-10 10:46:59

6

給他們所有的名稱是相同的

例如

<input type="button" value="a" name="btn" onclick="a" /> 
<input type="button" value="b" name="btn" onclick="b" /> 

然後在你的PHP中使用:

$val = $_POST['btn'] 

編輯,如BalusC說。如果你不打算使用onclick做任何JavaScript(例如,發送格式),然後幹掉它,並使用type="submit"

1

請記住,您在服務器端的POST中獲得的是鍵值對。你有價值觀,但你的鑰匙在哪裏?在這種情況下,您需要設置按鈕的name屬性,以便有一個用於訪問該值的密鑰。

此外,根據慣例,您需要將這些input s(按鈕)的type更改爲submit,以便它們將值正確發佈到表單中。

另外,你的onclick在做什麼?

3

正如Josh上面所說的,你想給每個人一個相同的名字(字母,按鈕等),並且他們都能工作。然後,你要圍繞所有這些與表單標籤:

<form name="myLetters" action="yourScript.php" method="POST"> 
<!-- Enter your values here with the following syntax: --> 
<input type="radio" name="letter" value="A" /> A 
<!-- Then add a submit value & close your form --> 
<input type="submit" name="submit" value="Choose Letter!" /> 
</form> 

然後,在由動作屬性定義的PHP腳本「yourScript.php」,你可以使用:

$_POST['letter'] 

要獲得所選的價值。

+0

只會添加POST不起作用沒有

標記。 – nvd 2015-03-19 15:13:27

-1
$restore = $this->createElement('submit', 'restore', array(
     'label' => 'FILE_RESTORE', 
     'class' => 'restore btn btn-small btn-primary', 
     'attribs' => array(
      'onClick' => 'restoreCheck();return false;' 
     ) 
    )); 
+5

歡迎來到SO。在您的答案中解釋代碼是一種好習慣。 – Tim 2012-11-08 03:39:26