| Previous
| Next
CGI.pm Reference
The following methods are supported by CGI.pm.
$query->accept(['content_type'])
Returns a list of media types that the browser accepts.
content_type
- If specified, returns instead the browser's preference for the specified content type, between 0.0 and 1.0
$query->append(-name=>'name',-values=>'value')
Appends a value or list of values to the named parameter.
-name=>'name'
- The parameter to append.
-values=>'value'
- The value to append. Multiple values can be specified as a reference to an anonymous array.
auth_type( )
Returns the authorization method.
$query->autoEscape(undef)
Turns off autoescaping of form elements.
print $query->button('name','function')
Generates a JavaScript button.
name
- The name of the button.
function
- The function to execute when the button is clicked. Using named parameters, the syntax is:
print $query->button(-name=>'name', -value=>'label', -onClick=>"function");
-value=>'label'
- The label to display for the button
print $query->checkbox('name' [,'checked','value','label'])
Generates a single checkbox.
name
- The name to assign the input to (required).
checked
- Checkbox should be checked initially.
value
- The value to return when checked (default is
on).
label
- The label to use for the checkbox (default is the name of the checkbox). Using named parameters, the syntax is:
print $query->checkbox(-name=>'name', -checked=>'checked', -value=>'value', -label=>'label', -onClick=>function);
-onClick=>function
- Browser should execute
function when the user clicks on any checkbox in the group
print $query->checkbox_group('name', \@list [, selected,'true',\%labelhash ])
Generates a list of checkbox elements.
name
- The name to assign the input to (required).
@list
- An array reference with the list items. You can also use an anonymous array reference.
selected
- The menu item(s) to be initially selected (default is that nothing is selected). This can be a single value or a reference to an array of values.
'true'
- Insert newlines between the checkboxes.
%labelhash
- A hash reference listing labels for each list item. Default is the list text itself. See
popup_menu for an example. Using named parameters, the syntax is:
print $query->checkbox_group(-name=>'name', -values=>\@list, -default=>selected, -linebreak=>'true', -labels=>\%labelhash, -columns=>n, -columnheader=>'string', -rows=>m, -rowheader=>'string', -onClick=>function);
-columns=>n
- The number of columns to use.
-columnheader=>'string'
- A header for the column.
-rows=m
- The number of rows to use. If omitted, and
-columns is specified, the rows will be calculated for you.
-rowheader=>'string'
- A header for the row.
-onClick=>function
- Browser should execute
function when the user clicks on any checkbox in the group.
$cookie=$query->cookie('name')
Defines or retrieves a cookie. See also header.
name
- Name of the cookie (required). Using named parameters, the syntax is:
$cookie = $query->cookie(-name=>'name', -value=>'value', -expires=>'expcode', -path=>'partial_url', -domain=>'domain_name', -secure=>1);
print $query->header(-cookie=>$cookie);
-value=>'value'
- A value to assign to the cookie. You can supply a scalar value, or a reference to an array or hash. If omitted, a cookie will be retrieved rather than defined.
-expires=>expcode
- Specifies an expiration timestamp (such as
+3d for three days). Values for expcode are:
ns
n seconds
nm
n minutes
nh
n hours
nd
n days
nM
n months
ny
n years
day_of_week, dd-MMM-YY hh:mm:ss GMT
- At the specified time.
now
- Expires immediately.
-path=>'partial_url'
- The partial URL for which the cookie is valid. Default is the current URL.
-domain=>'domain_name'
- The domain for which the cookie is valid.
-secure=>1
- Use this cookie only for a secure session.
print $query->defaults('label')
Generates a button that resets the form to its defaults. See also reset.
'label'
- The label to use for the button. If omitted, the label is
Defaults.
$query->delete('parameter')
Deletes a parameter.
'parameter'
- The parameter to delete
$query->delete_all( )
Deletes the entire CGI object.
print $query->dump([true])
Dumps all name/value pairs as an HTML list.
true
- If specified, prints as plain text
print $query->end_html( )
Ends an HTML document.
print $query->filefield('name' [,'default',size,maxlength ])
Generates a file upload field for Netscape browsers.
print $query->header([content_type ,status ,headers])
Generates the HTTP header for the document.
content_type
- The content type to return. Default is
text/html.
status
- The HTTP status code and description to return. Default is
OK.
headers
- Additional headers to include, such as
Content-Length: 123. Using named parameters, the syntax is:
print $query->header(-type=>'content_type', -nph=>1, -status=>'status_code', -expires=>'expcode', -cookie=>'cookie', -target=>'frame', -header=>'value');
-type=>content_type
- Specifies the content type.
-nph=>1
- Uses headers for a no-parse-header script.
-status=>status_code
- Specifies the status code.
-expires=>expcode
- Specifies an expiration timestamp (such as
+3d for three days). Values for expcode are:
ns
n seconds
nm
n minutes
nh
n hours
nd
n days
nM
n months
ny
n years
day_of_week, dd-MMM-YY hh:mm:ss GMT
- At the specified time
now
- Expires immediately
-cookie=>cookie
- Specifies a cookie. The cookie may be a scalar value or an array reference.
-header=>value
- Specifies any HTTP header.
-target=>frame
- Writes to specified frame.
print $query->hidden('name', 'value' [,'value'... ])
Generates a hidden text field.
print $query->image_button('name','url' [,'align'])
Generates a clickable image map.
name
- The name to use. When clicked, the
xyposition is returned as namexand namey, respectively.
url
- The URL of the image for the image map.
align
- The alignment type. May be
TOP, BOTTOM, or MIDDLE. Using named parameters, the syntax is:
print $query->image_button(-name=>'name', -src=>'url', -align=>'align', -onClick=>function);
-onClick=>function
- Browser should execute
function when the user clicks on the image
$query->import_names('package')
Creates variables in the specified package. Called import in older versions of CGI.pm.
package
- The package to import names into
print $query->isindex([action])
Generates an <ISINDEX> tag.
action
- The URL of the index script. Default is the current URL. Using named parameters, the syntax is:
print $query->isindex(-action=>$action);
@keyarray = $query->keywords( )
Retrieves keywords from an <ISINDEX> search.
@keyarray
- The array that will contain the retrieved keywords
nph(1)
Treats a CGI script as a no-parsed-header (NPH) script.
@name = $query->param([parameter [newvalue1, newvalue2, ...] ])
Gets or sets parameter names.
@name
- The array that will contain the parameter names.
parameter
- An optional single parameter to fetch. When used with no arguments,
param returns a list of all known parameter names.
newvalue1, newvalue2, ...
- The optional new values to assign to the parameter. Using named parameters, the syntax is:
$query->param(-name=>'parameter', -value=>'newvalue');
or:
$query->param(-name=>'parameter', -values=>'newvalue1', 'newvalue2', ...);
print $query->password_field('name' [,'value',size,maxlength ])
Generates a password input field.
name
- The name to assign the input to (required).
value
- The default password to place in the password field.
size
- The size of the password field (in characters).
maxlength
- The maximum length of the password field (in characters). Using named parameters, the syntax is:
print $query->password_field(-name=>'name', -default=>'value', -size=>size, -maxlength=>maxlength, -override=>1, -onChange=>function, -onFocus=>function, -onBlur=>function, -onSelect=>function);
-override=>1
- Text field should not inherit its value from a previous invocation of the script
-onChange=>function
- Browser should execute
function when the user changes the text field
-onFocus=>function
- Browser should execute
function when the focus is on the text field
-onBlur=>function
- Browser should execute
function when the focus leaves the text field
-onSelect=>function
- Browser should execute
function when the user changes a selected portion of the text field
path_info( )
Returns extra path information.
path_translated( )
Returns translated extra path information.
print $query->popup_menu('name', @array [,'selected', \%labelhash])
Generates a popup menu.
print $query->radio_group('name', \@list [, selected, 'true', \%label ])
Generates a set of radio buttons.
name
- The name to assign the input to (required).
@list
- An array reference with the list items. You can also use an anonymous array reference.
selected
- The menu item to be initially selected.
'true'
- Inserts newlines between radio buttons.
%label
- A hash reference listing labels for each list item. Default is the list text itself. (See
popup_menu for an example.) Using named parameters, the syntax is:
print $query->radio_group(-name=>'name', -values=>\@list, -default=>'selected', -linebreak=>'true', -labels=>\%labelhash, -columns=>n, -columnheader=>'string', -rows=>m, -rowheader=>'string');
-columns=>n
- The number of columns to use.
-columnheader=>'string'
- A header for the column.
-rows=m
- The number of rows to use. If omitted, and
-columns is specified, the rows will be calculated for you.
-rowheader=>'string'
- A header for the row.
raw_cookie( )
Returns the value of the HTTP_COOKIE header.
ReadParse( )
Creates a hash named %in containing query information. Used for backwards compatibility with the Perl4 cgi-lib.pl.
print $query->redirect('url')
Generates a header for redirecting the browser.
url
- The absolute URL to redirect to. Using named parameters, the syntax is:
print $query->redirect(-uri=>'url', -nph=>1);
referer( )
Returns the referring URL.
remote_host( )
Returns the remote hostname or IP address, depending on the configuration of the server.
remote_user( )
Returns the username supplied for authorization.
request_method( )
Returns the request method.
print $query->reset
Generates a button that resets the form to its initial values. See also defaults.
$query->save(filehandle)
Saves the form to the specified filehandle, to be read back with the new constructor.
filehandle
- The filehandle to save the file to
script_name( )
Returns the current partial URL.
print $query->scrolling_list('name',\@list[,selected,size,'true',\%labelhash]);
| |
Generates a scrolling list.
name
- The name to assign the input to (required).
@list
- An array reference with the list items. You can also use an anonymous array reference.
selected
- The menu item(s) to be initially selected (default is that nothing is selected). This can be a single value or a reference to a list of values.
size
- The number of elements to display in the list box.
'true'
- Allows multiple selections.
%labelhash
- A hash reference listing labels for each list item. Default is the list text itself. (See
popup_menu for an example.) Using named parameters, the syntax is:
print $query->scrolling_list(-name=>'name', -values=>\@listarray, -default=>selected, -size=>size, -multiple=>'true', -labels=>\%labelhash, -onChange=>function, -onFocus=>function, -onBlur=>function);
-onChange=>function
- Browser should execute
function when the user changes the text field
-onFocus=>function
- Browser should execute
function when the focus is on on the text field
-onBlur=>function
- Browser should execute
function when the focus leaves the text field
$url = $query->self_url
Returns the URL of the current script with all its state information intact.
print $query->start_html(['title', 'email', 'base', attribute="value"])
Generates <HTML> and <BODY> tags.
title
- The title of the page.
email
- The author's email address.
base
- Whether to use a
<BASE> tag in the header.
attribute="value"
- Specifies an attribute to the
<BODY> tag. Using named parameters, the syntax is:
print $query->start_html(-title=>'title', -author=>'email_address', -base=>'true', -xbase=>'url', -meta=>{'metatag1'=>'value1', 'metatag2'=> 'value2'}, -script=>'$script', -onLoad=>'$function', -onUnload=>'$function', -attribute=>'value');
-title=>'title'
- Specifies the title of the page.
-author=>'email_address'
- Specifies the author's email address.
-xbase=>'url'
- Provides an HREF for the
<BASE> tag. Default is the current location.
-meta=>{'metatag1'=>'value1', ... }
- Adds arbitrary meta information to the header as a reference to a hash. Valid tags are:
keywords
- Keywords for this document
copyleft
- copyleft for this document description
description
- Description for this document
attribute=>'value'
- Specifies an attribute to the
<BODY> tag
-script=>'$script'
- Specifies a JavaScript script to be embedded within a
<SCRIPT> block.
-onLoad=>'$function'
- Browser should execute specified function upon entering page.
-onUnload=>'$function'
- Browser should execute specified function upon leaving page.
print $query->startform([method, action, encoding])
Generates a <FORM> tag.
method
- The request method for the form. Values are:
POST
- Use the POST method (default).
GET
- Use the GET method.
action
- The URL of the CGI script. Default is the current URL.
encoding
- The encoding scheme. Possible values are
application/x-www-form-urlencoded and multipart/form-data. Using named parameters, the syntax is:
print $query->startform(-method=>$method, -action=>$action, -encoding=>$encoding, -name=>$name, -target=>frame, -onSubmit=>function);
-name=>name
- Names the form for identification by JavaScript functions
-target=>frame
- Writes to the specified frame
-onSubmit=>function
- A JavaScript function that the browser should execute upon submitting the form
print $query->start_multipart_form([method, action])
Generates <HTML> and <BODY> tags. Same as startform, but assumes multipart/form-data encoding as the default.
print $query->submit([ 'label''value' ])
Generates a Submit button.
label
- The label to use for the button.
value
- The value to return when the form is submitted. Using named parameters, the syntax is:
print $query->submit(-name=>'name', -value=>'value', -onClick=>function);
-onClick=>function
- Browser should execute
function when the user clicks on the image
print $query->textarea('name' [,'value',rows,columns ])
Generates a large multiline text input box.
name
- The name to assign the input to (required).
value
- The initial value to place into the text input box.
rows
- The number of rows to display.
columns
- The number of columns to display. Using named parameters, the syntax is:
print $query->textarea(-name=>'name', -default=>'value', -rows=>rows, -columns=>columns, -override=>1, -onChange=>function, -onFocus=>function, -onBlur=>function, -onSelect=>function);
-override=>1
- Text field should not inherit its value from a previous invocation of the script
-onChange=>function
- Browser should execute
function when the user changes the text field
-onFocus=>function
- Browser should execute
function when the focus is on the text field
-onBlur=>function
- Browser should execute
function when the focus leaves the text field
-onSelect=>function
- Browser should execute
function when the user changes a selected portion of the text field
print $query->textfield('name' [,'value', size, maxlength])
Generates a text input field.
name
- The name to assign the input to (required).
value
- The initial value to place in the text field.
size
- The size of the text field (in characters).
maxlength
- The maximum length of the text field (in characters). Using named parameters, the syntax is:
print $query->textfield(-name=>'name', -default=>'value', -size=>size, -maxlength=>maxlength, -override=>1, -onChange=>function, -onFocus=>function, -onBlur=>function, -onSelect=>function);
-override=>1
- Text field should not inherit its value from a previous invocation of the script
-onChange=>function
- Browser should execute
function when the user changes the text field
-onFocus=>function
- Browser should execute
function when the focus is on the text field
-onBlur=>function
- Browser should execute
function when the focus leaves the text field
-onSelect=>function
- Browser should execute
function when the user changes a selected portion of the text field
$url = $query->url
Returns a URL of the current script without query information.
use_named_parameters( )
Specifies that functions should take named parameters.
$query->user_agent( [string] )
Returns the value of the HTTP_USER_AGENT header.
string
- If specified, returns only headers matching the specified string
user_name( )
Returns the remote user's login name; unreliable.
|