On Mon, Feb 14, 2011 at 05:15:11PM -0500, Floyd Resler wrote: > > On Feb 14, 2011, at 4:18 PM, Paul M Foster wrote: > > > On Mon, Feb 14, 2011 at 03:35:02PM -0400, Paul Halliday wrote: > > > >> I have 2 buttons on a page: > >> > >> if (isset($_POST['botton1'])) {dothing1();} if > >> (isset($_POST['button2'])) {dothing2();} > >> > >> They both work as intended when I click on them. If however I click > >> within a text box and hit enter, they both fire. > >> > >> Is there a way to stop this? > > > > Check your code. My experience has been that forms with multiple > > submits will fire the *first* submit in the form when you hit Enter > > in a text field or whatever. I just tested this and found it to be > > true. > > > > Now, I'm doing this in Firefox on Linux. I suppose there could be > > differences among browsers, but I suspect that the specs for HTML > > mandate the behavior I describe. > > > > Paul > > > > If you don't mind using a little JavaScript you can test for which > button should fire when enter is pressed. How I would do it is to > first add a hidden field and call it "buttonClicked". Now, in the > text field where you would like a button to fire if enter is pressed, > at this to the tag: onkeyup="checkKey(this,event)". For the > JavaScript portion of it, do this: Yeah, but you don't even have to go that far. Just put a print_r($_POST) at the beginning of the file, and you'll see which button gets pressed. It will show up in the POST array. Paul -- Paul M. Foster http://noferblatz.com -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php