47

Here is the form that is confusing me

<h1>
    Login
</h1>
<form action="" method="post">
    <table align="left" border="0" cellspacing="0" cellpadding="3">
        <tr>
            <td>
                Username:
            </td>
            <td>
                <input type="text" name="user" maxlength="30">
            </td>
        </tr>
        <tr>
            <td>
                Password:
            </td>
            <td>
                <input type="password" name="pass" maxlength="30">
            </td>
        </tr>
        <tr>
            <td colspan="2" align="left">
                <input type="checkbox" name="remember">
                <font size="2">
                    Remember me next time
            </td>
        </tr>
        <tr>
            <td colspan="2" align="right">
                <input type="submit" name="sublogin" value="Login">
            </td>
        </tr>
        <tr>
            <td colspan="2" align="left">
                <a href="register.php">Join</a>
            </td>
        </tr>
    </table>
</form>

I got the code from this tutorial and it works fine but i cant seem to understand where a/the form submit too if no action is present

Shaz
  • 15,637
  • 3
  • 41
  • 59
Matt Elhotiby
  • 43,028
  • 85
  • 218
  • 321

3 Answers3

63

If action is set to "" or if the action attribute is missing, the form submits to itself. That is, if your script is index.php, your form submits to index.php.

Flimm
  • 136,138
  • 45
  • 251
  • 267
Jimmy Sawczuk
  • 13,488
  • 7
  • 46
  • 60
17

If the form's action attribute is either set to "" OR not specified, it will still default to action="self", thus the form will send to the address of the document containing the form.

So,

<form method="post">

<!-- IS THE SAME AS... -->

<form action="" method="post">

<!-- IS THE SAME AS... -->

<form action="self" method="post">

(Try it)

For reference, see the HTML standard 4.10.18.3 #8:

http://www.whatwg.org/specs/web-apps/current-work/multipage/association-of-controls-and-forms.html#form-submission-algorithm

Old McStopher
  • 6,295
  • 10
  • 60
  • 89
7

default action for form submission is METHOD="GET" and ACTION="SELF"
you should use a form name

if the action is empty then it posts to itself.

Sourav
  • 17,065
  • 35
  • 101
  • 159
  • 3
    does that mean if you go
    instead of
    (leaving out action entirely) it still posts to itself? or does this just work in some browsers.
    – Rusty Rob Mar 02 '12 at 02:23
  • 1
    @robertking, see my answer for this, including examples and a reference to the HTML standard. – Old McStopher Jun 29 '14 at 08:23
  • 2
    another person posting about how `ACTION="SELF"` submits to self.. where are you guys getting this from? That's not how it works. I know this is 6 years old but I don't think it worked like that 6 years ago either. – But those new buttons though.. Jun 23 '17 at 23:19