Categories
forms html php

Multiple submit button in a form

Hey I am very new to Web Programming. I have been learning PHP from the past few days and I am stuck at one thing.

I have a form tag in my code which has two submit buttons to manipulate on the data.
Since I can have only one action definition on my form tag, it can lead me to one page only. (Not very sure)

Now depending on the button clicked on the form, I want to load a different page.
One way is to check the button clicked in an if-else construct and then use echo ‘…’ in the branches and show as if it is a different page. But it doesn’t seem right for some reason. Can some one give me a better solution? Thanks.

One way is to use Javascript to switch the form’s action depending on which control has been clicked. The following example uses the jQuery library:

<form id="theForm" action="foo.php">
...
<input id="first" type="submit"/>
<input id="second" type="submit"/>
</form>​
$(document).ready(function() {
$("#theForm input").click(function(e) {
e.preventDefault();
if(e.target.id == 'first') {
$("#theForm").attr("action", "somePage.php");
} else {
$("#theForm").attr("action", "anotherPage.php");
}
alert($("#theForm").attr("action"));
$("#theForm").submit();
});
​});​

Demo here: http://jsfiddle.net/CMEqC/2/