It’s easy to process forms with PHP, as the form parameters are
available in the
$_POST arrays. There are many tricks and
techniques for working with forms, though, which are described in this
As we already discussed, there are two HTTP methods that a
client can use to pass form data to the server: GET and POST.
The method that a particular form uses is specified with the
method attribute to the
form tag. In theory, methods are
case-insensitive in the HTML, but in practice some broken browsers
require the method name to be in all uppercase.
A GET request encodes the form parameters in the URL in
what is called a query string; the text that
? is the query
A POST request passes the form parameters in the body of the HTTP request, leaving the URL untouched.
The most visible difference between GET and POST is the URL line. Because all of a form’s parameters are encoded in the URL with a GET request, users can bookmark GET queries. They cannot do this with POST requests, however.
The biggest difference between GET and POST requests, however, is far subtler. The HTTP specification says that GET requests are idempotent—that is, one GET request for a particular URL, including form parameters, is the same as two or more requests for that URL. Thus, web browsers can cache the response pages for GET requests, because the response page doesn’t change regardless of how many times the page ...