⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cgi.html

📁 perl教程
💻 HTML
📖 第 1 页 / 共 5 页
字号:
<?xml version="1.0" ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<!-- saved from url=(0017)http://localhost/ -->
<script language="JavaScript" src="../displayToc.js"></script>
<script language="JavaScript" src="../tocParas.js"></script>
<script language="JavaScript" src="../tocTab.js"></script>
<link rel="stylesheet" type="text/css" href="../scineplex.css">
<title>CGI - Simple Common Gateway Interface Class</title>
<link rel="stylesheet" href="../Active.css" type="text/css" />
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<link rev="made" href="mailto:" />
</head>

<body>

<script>writelinks('__top__',1);</script>
<h1><a>CGI - Simple Common Gateway Interface Class</a></h1>
<p><a name="__index__"></a></p>

<!-- INDEX BEGIN -->

<ul>

	<li><a href="#name">NAME</a></li>
	<li><a href="#synopsis">SYNOPSIS</a></li>
	<li><a href="#abstract">ABSTRACT</a></li>
	<li><a href="#description">DESCRIPTION</a></li>
	<ul>

		<li><a href="#programming_style">PROGRAMMING STYLE</a></li>
		<li><a href="#calling_cgi_pm_routines">CALLING CGI.PM ROUTINES</a></li>
		<li><a href="#creating_a_new_query_object__objectoriented_style__">CREATING A NEW QUERY OBJECT (OBJECT-ORIENTED STYLE):</a></li>
		<li><a href="#creating_a_new_query_object_from_an_input_file">CREATING A NEW QUERY OBJECT FROM AN INPUT FILE</a></li>
		<li><a href="#fetching_a_list_of_keywords_from_the_query_">FETCHING A LIST OF KEYWORDS FROM THE QUERY:</a></li>
		<li><a href="#fetching_the_names_of_all_the_parameters_passed_to_your_script_">FETCHING THE NAMES OF ALL THE PARAMETERS PASSED TO YOUR SCRIPT:</a></li>
		<li><a href="#fetching_the_value_or_values_of_a_single_named_parameter_">FETCHING THE VALUE OR VALUES OF A SINGLE NAMED PARAMETER:</a></li>
		<li><a href="#setting_the_value_s__of_a_named_parameter_">SETTING THE <code>VALUE(S)</code> OF A NAMED PARAMETER:</a></li>
		<li><a href="#appending_additional_values_to_a_named_parameter_">APPENDING ADDITIONAL VALUES TO A NAMED PARAMETER:</a></li>
		<li><a href="#importing_all_parameters_into_a_namespace_">IMPORTING ALL PARAMETERS INTO A NAMESPACE:</a></li>
		<li><a href="#deleting_a_parameter_completely_">DELETING A PARAMETER COMPLETELY:</a></li>
		<li><a href="#deleting_all_parameters_">DELETING ALL PARAMETERS:</a></li>
		<li><a href="#handling_nonurlencoded_arguments">HANDLING NON-URLENCODED ARGUMENTS</a></li>
		<li><a href="#direct_access_to_the_parameter_list_">DIRECT ACCESS TO THE PARAMETER LIST:</a></li>
		<li><a href="#fetching_the_parameter_list_as_a_hash_">FETCHING THE PARAMETER LIST AS A HASH:</a></li>
		<li><a href="#saving_the_state_of_the_script_to_a_file_">SAVING THE STATE OF THE SCRIPT TO A FILE:</a></li>
		<li><a href="#retrieving_cgi_errors">RETRIEVING CGI ERRORS</a></li>
		<li><a href="#using_the_functionoriented_interface">USING THE FUNCTION-ORIENTED INTERFACE</a></li>
		<li><a href="#pragmas">PRAGMAS</a></li>
		<li><a href="#special_forms_for_importing_htmltag_functions">SPECIAL FORMS FOR IMPORTING HTML-TAG FUNCTIONS</a></li>
	</ul>

	<li><a href="#generating_dynamic_documents">GENERATING DYNAMIC DOCUMENTS</a></li>
	<ul>

		<li><a href="#creating_a_standard_http_header_">CREATING A STANDARD HTTP HEADER:</a></li>
		<li><a href="#generating_a_redirection_header">GENERATING A REDIRECTION HEADER</a></li>
		<li><a href="#creating_the_html_document_header">CREATING THE HTML DOCUMENT HEADER</a></li>
		<li><a href="#ending_the_html_document_">ENDING THE HTML DOCUMENT:</a></li>
		<li><a href="#creating_a_selfreferencing_url_that_preserves_state_information_">CREATING A SELF-REFERENCING URL THAT PRESERVES STATE INFORMATION:</a></li>
		<li><a href="#obtaining_the_script_s_url">OBTAINING THE SCRIPT'S URL</a></li>
		<li><a href="#mixing_post_and_url_parameters">MIXING POST AND URL PARAMETERS</a></li>
	</ul>

	<li><a href="#creating_standard_html_elements_">CREATING STANDARD HTML ELEMENTS:</a></li>
	<ul>

		<li><a href="#providing_arguments_to_html_shortcuts">PROVIDING ARGUMENTS TO HTML SHORTCUTS</a></li>
		<li><a href="#the_distributive_property_of_html_shortcuts">THE DISTRIBUTIVE PROPERTY OF HTML SHORTCUTS</a></li>
		<li><a href="#html_shortcuts_and_list_interpolation">HTML SHORTCUTS AND LIST INTERPOLATION</a></li>
		<li><a href="#nonstandard_html_shortcuts">NON-STANDARD HTML SHORTCUTS</a></li>
		<li><a href="#autoescaping_html">AUTOESCAPING HTML</a></li>
		<li><a href="#prettyprinting_html">PRETTY-PRINTING HTML</a></li>
	</ul>

	<li><a href="#creating_fillout_forms_">CREATING FILL-OUT FORMS:</a></li>
	<ul>

		<li><a href="#creating_an_isindex_tag">CREATING AN ISINDEX TAG</a></li>
		<li><a href="#starting_and_ending_a_form">STARTING AND ENDING A FORM</a></li>
		<li><a href="#form_elements">FORM ELEMENTS</a></li>
		<li><a href="#creating_a_text_field">CREATING A TEXT FIELD</a></li>
		<li><a href="#creating_a_big_text_field">CREATING A BIG TEXT FIELD</a></li>
		<li><a href="#creating_a_password_field">CREATING A PASSWORD FIELD</a></li>
		<li><a href="#creating_a_file_upload_field">CREATING A FILE UPLOAD FIELD</a></li>
		<li><a href="#creating_a_popup_menu">CREATING A POPUP MENU</a></li>
		<li><a href="#creating_an_option_group">CREATING AN OPTION GROUP</a></li>
		<li><a href="#creating_a_scrolling_list">CREATING A SCROLLING LIST</a></li>
		<li><a href="#creating_a_group_of_related_checkboxes">CREATING A GROUP OF RELATED CHECKBOXES</a></li>
		<li><a href="#creating_a_standalone_checkbox">CREATING A STANDALONE CHECKBOX</a></li>
		<li><a href="#creating_a_radio_button_group">CREATING A RADIO BUTTON GROUP</a></li>
		<li><a href="#creating_a_submit_button">CREATING A SUBMIT BUTTON</a></li>
		<li><a href="#creating_a_reset_button">CREATING A RESET BUTTON</a></li>
		<li><a href="#creating_a_default_button">CREATING A DEFAULT BUTTON</a></li>
		<li><a href="#creating_a_hidden_field">CREATING A HIDDEN FIELD</a></li>
		<li><a href="#creating_a_clickable_image_button">CREATING A CLICKABLE IMAGE BUTTON</a></li>
		<li><a href="#creating_a_javascript_action_button">CREATING A JAVASCRIPT ACTION BUTTON</a></li>
	</ul>

	<li><a href="#http_cookies">HTTP COOKIES</a></li>
	<li><a href="#working_with_frames">WORKING WITH FRAMES</a></li>
	<li><a href="#support_for_javascript">SUPPORT FOR JAVASCRIPT</a></li>
	<li><a href="#limited_support_for_cascading_style_sheets">LIMITED SUPPORT FOR CASCADING STYLE SHEETS</a></li>
	<li><a href="#debugging">DEBUGGING</a></li>
	<ul>

		<li><a href="#dumping_out_all_the_name_value_pairs">DUMPING OUT ALL THE NAME/VALUE PAIRS</a></li>
	</ul>

	<li><a href="#fetching_environment_variables">FETCHING ENVIRONMENT VARIABLES</a></li>
	<li><a href="#using_nph_scripts">USING NPH SCRIPTS</a></li>
	<li><a href="#server_push">Server Push</a></li>
	<li><a href="#avoiding_denial_of_service_attacks">Avoiding Denial of Service Attacks</a></li>
	<li><a href="#compatibility_with_cgilib_pl">COMPATIBILITY WITH CGI-LIB.PL</a></li>
	<li><a href="#author_information">AUTHOR INFORMATION</a></li>
	<li><a href="#credits">CREDITS</a></li>
	<li><a href="#a_complete_example_of_a_simple_formbased_script">A COMPLETE EXAMPLE OF A SIMPLE FORM-BASED SCRIPT</a></li>
	<li><a href="#bugs">BUGS</a></li>
	<li><a href="#see_also">SEE ALSO</a></li>
</ul>
<!-- INDEX END -->

<hr />
<p>
</p>
<h1><a name="name">NAME</a></h1>
<p>CGI - Simple Common Gateway Interface Class</p>
<p>
</p>
<hr />
<h1><a name="synopsis">SYNOPSIS</a></h1>
<pre>
  <span class="comment"># CGI script that creates a fill-out form</span>
  <span class="comment"># and echoes back its values.</span>
</pre>
<pre>
  <span class="keyword">use</span> <span class="variable">CGI</span> <span class="string">qw/:standard/</span><span class="operator">;</span>
  <span class="keyword">print</span> <span class="variable">header</span><span class="operator">,</span>
        <span class="variable">start_html</span><span class="operator">(</span><span class="string">'A Simple Example'</span><span class="operator">),</span>
        <span class="variable">h1</span><span class="operator">(</span><span class="string">'A Simple Example'</span><span class="operator">),</span>
        <span class="variable">start_form</span><span class="operator">,</span>
        <span class="string">"What's your name? "</span><span class="operator">,</span><span class="variable">textfield</span><span class="operator">(</span><span class="string">'name'</span><span class="operator">),</span><span class="variable">p</span><span class="operator">,</span>
        <span class="string">"What's the combination?"</span><span class="operator">,</span> <span class="variable">p</span><span class="operator">,</span>
        <span class="variable">checkbox_group</span><span class="operator">(</span><span class="string">-name</span><span class="operator">=&gt;</span><span class="string">'words'</span><span class="operator">,</span>
                       <span class="string">-values</span><span class="operator">=&gt;</span><span class="operator">[</span><span class="string">'eenie'</span><span class="operator">,</span><span class="string">'meenie'</span><span class="operator">,</span><span class="string">'minie'</span><span class="operator">,</span><span class="string">'moe'</span><span class="operator">]</span><span class="operator">,</span>
                       <span class="string">-defaults</span><span class="operator">=&gt;</span><span class="operator">[</span><span class="string">'eenie'</span><span class="operator">,</span><span class="string">'minie'</span><span class="operator">]</span><span class="operator">),</span> <span class="variable">p</span><span class="operator">,</span>
        <span class="string">"What's your favorite color? "</span><span class="operator">,</span>
        <span class="variable">popup_menu</span><span class="operator">(</span><span class="string">-name</span><span class="operator">=&gt;</span><span class="string">'color'</span><span class="operator">,</span>
                   <span class="string">-values</span><span class="operator">=&gt;</span><span class="operator">[</span><span class="string">'red'</span><span class="operator">,</span><span class="string">'green'</span><span class="operator">,</span><span class="string">'blue'</span><span class="operator">,</span><span class="string">'chartreuse'</span><span class="operator">]</span><span class="operator">),</span><span class="variable">p</span><span class="operator">,</span>
        <span class="variable">submit</span><span class="operator">,</span>
        <span class="variable">end_form</span><span class="operator">,</span>
        <span class="variable">hr</span><span class="operator">;</span>
</pre>
<pre>
   <span class="keyword">if</span> <span class="operator">(</span><span class="variable">param</span><span class="operator">())</span> <span class="operator">{</span>
       <span class="keyword">my</span> <span class="variable">$name</span>      <span class="operator">=</span> <span class="variable">param</span><span class="operator">(</span><span class="string">'name'</span><span class="operator">);</span>
       <span class="keyword">my</span> <span class="variable">$keywords</span>  <span class="operator">=</span> <span class="keyword">join</span> <span class="string">', '</span><span class="operator">,</span><span class="variable">param</span><span class="operator">(</span><span class="string">'words'</span><span class="operator">);</span>
       <span class="keyword">my</span> <span class="variable">$color</span>     <span class="operator">=</span> <span class="variable">param</span><span class="operator">(</span><span class="string">'color'</span><span class="operator">);</span>
       <span class="keyword">print</span> <span class="string">"Your name is"</span><span class="operator">,</span><span class="variable">em</span><span class="operator">(</span><span class="variable">escapeHTML</span><span class="operator">(</span><span class="variable">$name</span><span class="operator">)),</span><span class="variable">p</span><span class="operator">,</span>
             <span class="string">"The keywords are: "</span><span class="operator">,</span><span class="variable">em</span><span class="operator">(</span><span class="variable">escapeHTML</span><span class="operator">(</span><span class="variable">$keywords</span><span class="operator">)),</span><span class="variable">p</span><span class="operator">,</span>
             <span class="string">"Your favorite color is "</span><span class="operator">,</span><span class="variable">em</span><span class="operator">(</span><span class="variable">escapeHTML</span><span class="operator">(</span><span class="variable">$color</span><span class="operator">)),</span>
             <span class="variable">hr</span><span class="operator">;</span>
   <span class="operator">}</span>
</pre>
<p>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -