2010-06-01 97 views
0

想獲得一個共識的最佳做法是在這種情況下什麼:PHP:處理多個提交按鈕

Muliple提交按鈕,是它更好地具有針對的提交的每一個單獨的形式處理這,或者可以有一個表單並檢查哪個按鈕被按下?

感謝您的輸入:d

+0

爲什麼不創建'嚮導'類型的接口?使用「下一個」和「上一個」按鈕也可以像提交按鈕一樣。 – 2010-06-01 01:42:45

回答

0

嗯,這取決於表單的內容,有2提交按鈕會達到你想要什麼的唯一方式。 (如果有文本框,你將如何獲得2個表單......使用javascript複製輸入的數據將是相當煩人的)

我會堅持只檢查哪個按鈕被按下,應該會更容易。

0

當然,它總是取決於目的。然而,作爲一個規則的拇指,我做的自然的事情:

  • 如果有表單字段將由要麼提交按鈕提交,使用JavaScript和檢測與處理程序按下提交按鈕。
  • 所有其他情況下,使用不同的形式。

我儘量避免合併形式(第一個選項)爲:

  1. 輸入名稱變更既影響提交目標網頁,並要求雙方的<form action="blah">頁面的變化。
  2. JavaScript是不是總是在瀏覽器中啓用
2

假設你只在PHP這樣做,只是改變了值,每個按鈕,並在後期檢查是否存在:

if (isset($_POST['button1']) && $_POST['button1'] == "Previous") { 

    // do something 

} else if (isset($_POST['button1']) && $_POST['button1'] == "Next") { 

    // do something else 

} else { 

    // nothing has been submitted, display default 

} 
2

在我的案例我會這樣做,類似於安德魯希思,但我給你的按鈕一個獨特的名字。因此不需要& &子句

+1

這當然也起作用,而且是我在實踐中所做的。我用相同的名字去強調能夠讓「一個」按鈕以同樣的形式做幾件不同的事情。 – Drew 2010-06-01 07:04:52