The SitePoint Forums have moved.

You can now find them here.
This forum is now closed to new posts, but you can browse existing content.
You can find out more information about the move and how to open a new account (if necessary) here.
If you get stuck you can get support by emailing forums@sitepoint.com

If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

It just specifies what the form is meant to do. If it's a contact form, for example, the form will "post" information to the server. If it's a form for receiving some information (say from a database), it might need to "get" something. HTML can't do any of this, though. The actual processing has to be handled by a scripting language like PHP.

Well if one were to receive information from a database, why would it be necessary filling out a form if that database didn't receive the information? (i.e., forms would become pointless except perhaps filling out an email address for the database to send it to)

If you are using the form to retrieve information then you should use GET. That way the browser knows that you are only retrieving data and can cache the results so that if you ask for the same info again it doesn't have to go back to the server.

If you are updating something on the server then you should use POST as that tells the browser that the data is changing the server and so what comes back this time isn't going to necessarily be what comes back the next time the form is submitted.

The two are not supposed to be used interchangeably and many people use one when they ought to be using the other as they base their decision incorrectly on how the data gets passed to the server instead of what is being done with the data.

I have studied the basics, but it is a big area, and I don't need it much. Most web designers can use a CMS to handle most operations, and although it helps to understand the PHP behind the scenes, you can get away without it (not that I'm really satisfied with that!) I'm gradually learning more, but it's not a main priority.

So using GET is not a very bright idea for a login form, because the password will be visible in plaintext in the URL.

It is also inappropriate because logging in results in a change on the server and you are supposed to use POST when updating the server and only use GET when you are requesting something that isn't changed as a result of your request. The selection should be made based on the purpose of the two commands (to write/post or read/get) rather than on how they pass their data.

My rule of thumb is that if you need to be able to link to or share the target page to everyone, then you should use GET. If the target page is either secret, or it doesn't make sense to link to it, then you should use POST. Nothing's ever that simple, of course, but it'll get you a long way.