2012-03-02 20 views

Odpowiedz

4

Najłatwiej jest, aby wymienić swoje unikalne przyciski przesyłania do formularza. Można również użyć tego, jeśli masz wiele złożyć przyciski do jednego formularza (np - przedstawienia i zaoszczędzić, złożyć i powrót, złożyć i wyjście)

<input type="submit" name="action" value="Save"> 
<input type="submit" name="action" value="Return"> 
<input type="submit" name="action" value="Exit"> 

$ _POST array (lub $ _GET/$ _ REQUEST) będzie zawierają kluczową "akcję" z wartością wprowadzonego przycisku (klikniętego lub nie).

Z reguły unikam przekazywania ukrytych pól tekstowych itp., Które są niepotrzebne - po prostu, aby kod był bardziej czysty.

So. Dla aplikacji, Oddałbym swoje przedstawienia wartości przycisków, takich jak:

<form id="Form1"> 
    <input type="submit" name="action" value="Form1"> 
</form> 

<form id="Form2"> 
<input type="submit" name="action" value="Form2"> 
</form> 

<form id="Form3"> 
<input type="submit" name="action" value="Form3"> 
</form> 
5

Dzięki umieszczeniu unikalnych danych w każdym z nich. Prawdopodobnie z ukrytymi danymi wejściowymi.

7

Można ustawić taką wejście w każdej formie:

<input type="hidden" name="form_id" value="identifier_of_form" /> 

Na przykład:

<form method="post" action=""> 
    <input type="hidden" name="form_id" value="form_0" /> 
    <!-- snip --> 
</form> 

<form method="post" action=""> 
    <input type="hidden" name="form_id" value="form_1" /> 
    <!-- snip --> 
</form> 

<form method="post" action=""> 
    <input type="hidden" name="form_id" value="form_n" /> 
    <!-- snip --> 
</form> 
0

Działa to dla mnie ....

  1. Każda postać ma niepowtarzalną nazwę „” ...

    metoda form = "post" action = "" name = "UniqueName" id = "UniqueName"

  2. Każda postać ma to ukryte pole ...

    input type = "hidden" id = "action1_1" nazwa = wartość "Działanie 1" = "1"

z unikalnym rozszerzeniem id (_1, _2, 3 ... i unikalne wartości (1 , 2,3, ....) i nazwa zwyczajowa: Działanie 1

  1. następnie w skrypcie indeksu PHP

    $ Działanie 1 = $ _ POST [ 'Działanie 1'];

    if ($ Działanie 1 == "1") {include ("form_process1.php"; //...do cokolwiek to forma potrzeba Dones ... } else if ($ Działanie 1 == „whateverelse ") {include (" form_process.php "; // ... zrobić cokolwiek to forma robi ... }

1

dlaczego nie wystarczy ustawić nazwy formie jako "Działanie 1", "actions2" "action3",

Jeśli tak, nie są potrzebne ukryte dane wejściowe

Powiązane problemy