URL Parameters and queries
The path component of a URL can include parameters and queries that are used by the web server. A common example is to include a query as part of the URL that runs a search script. The following example shows the string q=red
as a query that the script search.php can use:
http://example.com/search.php?q=red
Multiple query terms can be encoded using the &
character as a separator:
http://example.com/search.php?q=red&r=victoria
Parameters allow other information not related to a query to be encoded. For example, consider the parameter lines=10
in the URL:
http://example.com/search.php;lines=10?q=red
This can be used by the search.php script to modify the number of lines to display in a result screen.
While HTTP provides the distinction between parameters and queries, parameters are more complex than what we have described here and are not commonly used in practice. We discussed how PHP can use query variables encoded into URLs in Chapter 5.
URL Fragment identifiers
A URL can include a fragment identifier that is interpreted by the client once a requested resource has been received. A fragment identifier is included at the end of a URL separated from the path by the #
character. The meaning of the fragment identifier depends on the type of the resource. For example, the following URL includes the fragment identifier tannin
for a HTML document:
http://example.com/documents/glossary.html#tannin
When a web browser receives the HTML resource, it then positions the rendered document in the display to start at the anchor element <a name="tannin">
if the named anchor exists.