Méthodes Ruby CGI


Ce qui suit est une liste de méthodes de la classe CGI :

Numéro de sérieDescription de la méthode
1CGI::new([ level="query"]) < br/>Créez des objets CGI. La requête peut avoir les valeurs suivantes :
  • 序号方法描述
    1CGI::new([ level="query"])
    创建 CGI 对象。query可以是以下值:
    • query: 没有 HTML 生成输出

    • html3: HTML3.2

    • html4:  HTML4.0 Strict

    • html4Tr: HTML4.0 Transitional

    • html4Fr:  HTML4.0 Frameset

    2CGI::escape( str)
    使用 URL 编码来转义字符串
    3CGI::unescape( str)
    对通过 escape() 编码的字符串进行解码。
    4CGI::escapeHTML( str)
    编码 HTML 特殊字符, 包括: & < >。
    5CGI::unescapeHTML( str)
    解码 HTML 特殊字符, 包括: & < >。
    6CGI::escapeElement( str[, element...])
    在指定的 HTML 元素中编码 HTML 特殊字符。
    7CGI::unescapeElement( str, element[, element...])
    在指定的 HTML 元素中解码 HTML 特殊字符。
    8CGI::parse( query)
    解析查询字符串,并返回包含哈希的 键=》值 对。
    9CGI::pretty( string[, leader=" "])
    返回整齐的HTML格式。 如果指定了 leader ,它将写入到每一行的开头。 leader 默认值为两个空格。
    10CGI::rfc1123_date( time)
    根据 RFC-1123 来格式化时间 (例如, Tue, 2 Jun 2008 00:00:00 GMT)。
    requête : Aucune sortie HTML générée<🎜>
  • < 🎜 >html3 : HTML3.2<🎜>
  • <🎜>html4 : HTML4.0 Strict<🎜>
  • < 🎜>html4Tr : HTML4.0 Transitional<🎜>
  • <🎜>html4Fr : HTML4.0 Frameset<🎜>
  • < / ul>
2CGI::escape( str)
Utiliser l'encodage d'URL pour échapper les chaînes < /td>
3CGI::unescape( str)
Effectuer sur la chaîne encodée par le décodage escape().
4CGI::escapeHTML( str)
Encoder les caractères spéciaux HTML, notamment : & < >.
5CGI::unescapeHTML(str)
Décoder les caractères spéciaux HTML, notamment : & < >.
6CGI::escapeElement( str[, element...])
À l'heure spécifiée Encodez les caractères spéciaux HTML dans les éléments HTML.
7CGI::unescapeElement( str, element[, element...])
Dans Décode les caractères spéciaux HTML dans l'élément HTML spécifié.
8CGI::parse( query)
Analyser la chaîne de requête et renvoyer le hachage La clé => paire de valeurs.
9CGI::pretty( string[, leader=" "])
Renvoyer du HTML soigné format. Si leader est spécifié, il sera écrit au début de chaque ligne. leader La valeur par défaut est de deux espaces.
10CGI::rfc1123_date( time)
Formater l'heure selon la RFC-1123 (par ex. , Mardi 2 juin 2008 00:00:00 GMT).

Méthode d'instanciation CGI

Dans l'exemple suivant, nous attribuons l'objet de CGI::new à la variable c La liste des méthodes est la suivante :

Numéro de sérieDescription de la méthode
1c[ nom]
Renvoie un tableau contenant la valeur du champ correspondant nommé nom.
2c.checkbox( nom[, valeur[, check=false]])
c.checkbox( options)

Renvoie la chaîne HTML utilisée pour définir le champ de la case à cocher. Les attributs du label peuvent être passés en paramètre avec une fonction de hachage.
3c.checkbox_group( nom, valeur...)
c.checkbox_group( options)

> Renvoie la chaîne HTML utilisée pour définir le groupe de cases à cocher. Les attributs du label peuvent être passés en paramètre avec une fonction de hachage.
4c.file_field( nom[, size=20[, max]])
c.file_field( options)

Renvoie la chaîne HTML définissant le champ du fichier.
5c.form([ method="post"[, url]]) { ...}
c.form( options)

Renvoie la chaîne HTML qui définit le formulaire. Si un bloc de code est spécifié, il sera affiché sous forme de contenu de formulaire. Les attributs du label peuvent être passés en paramètre avec une fonction de hachage.
6c.cookies
Renvoie un objet CGI::Cookie, contenant les paires clé-valeur dans le cookie.
7c.header([ header])
Renvoie les informations d'en-tête CGI. Si le paramètre d'en-tête est une valeur de hachage, ses paires clé-valeur sont utilisées pour créer les informations d'en-tête.
8c.hidden( nom[, valeur])
c.hidden( options)

Retour à définir une chaîne HTML pour les champs masqués. Les attributs du label peuvent être passés en paramètre avec une fonction de hachage.
9c.image_button( url[, nom[, alt]])
c.image_button( options)

Renvoie une chaîne HTML définissant un bouton image. Les attributs du label peuvent être passés en paramètre avec une fonction de hachage.
10c.keys
Renvoie un tableau contenant les noms des champs du formulaire.
11c.key?(nom)
c.has_key?(nom)
c.include?(nom)

Renvoie vrai si le formulaire contient le nom du champ spécifié.
12c.multipart_form([ url[, encode]]) { ...}
c.multipart_form( options) { . ..}

Renvoie la chaîne HTML qui définit un formulaire multimédia (multipart). Les attributs du label peuvent être passés en paramètre avec une fonction de hachage.
13c.out([ header]) { ...}
Générer du HTML et une sortie. Utilisez la chaîne générée par la sortie du bloc pour créer le corps de la page.
14c.params
Renvoie un hachage contenant le nom et la valeur du champ du formulaire.
15c.params= hash
Défini en utilisant le nom et la valeur du champ.
16c.password_field( nom[, valeur[, taille=40[, max]]])
c.password_field( options )

Renvoie une chaîne HTML définissant un champ de mot de passe. Les attributs du label peuvent être passés en paramètre avec une fonction de hachage.
17c.popup_menu( nom, valeur...)
c.popup_menu( options)
c.scrolling_list( nom , valeur...)
c.scrolling_list( options)

Renvoie une chaîne HTML qui définit un menu contextuel. Les attributs du label peuvent être passés en paramètre avec une fonction de hachage.
18c.radio_button( nom[, valeur[, vérifié=false]])
c.radio_button(options)

Renvoie une chaîne HTML définissant un champ radio. Les attributs du label peuvent être passés en paramètre avec une fonction de hachage.
19c.radio_group( nom, valeur...)
c.radio_group( options)

Retour à définition Une chaîne HTML pour un groupe de boutons radio. Les attributs du label peuvent être passés en paramètre avec une fonction de hachage.
20c.reset( nom[, valeur])
c.reset( options)

Retour à définir une chaîne HTML pour le bouton de réinitialisation. Les attributs du label peuvent être passés en paramètre avec une fonction de hachage
21c.text_field( name[, value[, size=40[, max ]]])
c.text_field( options)

Renvoie une chaîne HTML définissant un champ de texte. Les attributs du label peuvent être passés en paramètre avec une fonction de hachage.
22c.textarea( nom[, cols=70[, rows=10]]) { ...}
c. textarea( options) { ...}

Renvoie une chaîne HTML définissant un champ textarea. Si block est spécifié, la chaîne générée par le bloc de code sera utilisée comme contenu de la zone de texte. Les attributs du label peuvent être passés en paramètre avec une fonction de hachage.

Méthode de génération HTML

Vous pouvez utiliser le nom de balise HTML correspondant dans l'instance CGI pour créer des balises HTML. L'exemple est le suivant :

#!/usr/bin/ruby

require "cgi"
cgi = CGI.new("html4")
cgi.out{
   cgi.html{
      cgi.head{ "\n"+cgi.title{"This Is a Test"} } +
      cgi.body{ "\n"+
         cgi.form{"\n"+
            cgi.hr +
            cgi.h1 { "A Form: " } + "\n"+
            cgi.textarea("get_text") +"\n"+
            cgi.br +
            cgi.submit
         }
      }
   }
}

Objet CGI. propriétés

Vous pouvez utiliser les attributs suivants dans les instances CGI :

属性返回值
accept可接受的 MIME 类型
accept_charset可接受的字符集
accept_encoding可接受的编码
accept_language可接受的语言
auth_type可接受的类型
raw_cookieCookie 数据 (原字符串)
content_length内容长度(Content length)
content_type内容类型(Content type)
FromClient e-mail 地址
gateway_interfaceCGI 版本
path_info路径
path_translated转换后的路径
Query_string查询字符串
referer之前访问网址
remote_addr客户端主机地址(IP)
remote_host客户端主机名
remote_ident客户端名
remote_user经过身份验证的用户
request_method请求方法(GET, POST, 等。)
script_name参数名
server_name服务器名
server_port服务器端口
server_protocol服务器协议
server_software服务器软件
user_agent用户代理(User agent)