国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Delphi > 正文

用Delphi編寫(xiě)CGI程序(一)

2019-11-18 18:49:12
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
1.0 、 CGI 程 序 的 功 能:
    首 先, 什 么 是 公 共 網(wǎng) 關(guān) 接 口( CGI ) 呢? CGI 是 一 個(gè) 用 于 定 義 WEB 服 務(wù) 器 與 外 部 程 序 之 間 通 信 方 式 的 標(biāo) 準(zhǔn), 使 得 外 部 程 序 能 生 成 HTML 、 圖 象 或 者 其 他 內(nèi) 容, 而 服 務(wù) 器 處 理 的 方 式 與 那 些 非 外 部 程 序 生 成 的 HTML 、 圖 象 或 者 其 他 內(nèi) 容 的 處 理 方 式 是 相 同 的。 因 此, CGI 程 序 不 僅 使 你 能 生 成 靜 態(tài) 內(nèi) 容, 而 且 能 生 成 動(dòng) 態(tài) 內(nèi) 容。 使 用 CGI 的 原 因 在 于 它 是 一 個(gè) 定 義 良 好 并 被 廣 泛 支 持 的 標(biāo) 準(zhǔn)。 雖 然, java 、 ActiveX 等 可 以 完 成 CGI 程 序 的 功 能, 但 并 不 是 所 有 瀏 覽 器 都 支 持 它 們。 相 反, 所 有 瀏 覽 器 都 支 持 CGI , 如: Lynx 、 IE 、 Netscape 等。

    然 而, 和 其 他 技 術(shù) 一 樣, CGI 也 有 它 的 局 限 性。 本 節(jié) 我 就 講 述 CGI 程 序 的 功 能、 優(yōu) 點(diǎn) 與 不 足。

1.1 、 CGI 功 能
    有 許 多 任 務(wù), CGI 是 最 佳 的 是 唯 一 的 選 擇, 這 些 任 務(wù) 可 分 為 三 類(lèi): 初 級(jí) 任 務(wù)、 中 級(jí) 任 務(wù) 和 高 級(jí) 任 務(wù)。 初 級(jí) 任 務(wù) 是 一 些 不 用 怎 么 編 程 的 任 務(wù), 如:

文 本 型 計(jì) 數(shù) 器
生 成 簡(jiǎn) 單 的 HTML 的 程 序
少 于 50 行 用 Perl 語(yǔ) 言、 Shell 腳 本、 C 語(yǔ) 言 或 C++ 語(yǔ) 言 編 寫(xiě) 的 程 序
    這 樣 的 任 務(wù) 用 CGI 來(lái) 寫(xiě) 至 少 有 三 點(diǎn) 好 處: 第 一、 CGI 運(yùn) 行 最 快, 而 Java 等 開(kāi) 銷(xiāo) 太 大; 第 二、 CGI 標(biāo) 準(zhǔn) 于 當(dāng) 前 瀏 覽 器 最 兼 容, 這 一 點(diǎn) 在 前 面 已 經(jīng) 提 到; 第 三、 CGI 資 源 豐 富, 您 在 Internet 上 可 以 找 到 成 千 上 萬(wàn) 的 CGI 代 碼。

    中 級(jí) 任 務(wù) 是 包 括 圖 象 映 象 和 其 他 一 些 稍 復(fù) 雜 的 程 序 設(shè) 計(jì) 任 務(wù)。 在 中 級(jí) 任 務(wù) 中, 用 CGI 和 Java 來(lái) 編 寫(xiě) 程 序 的 難 易 程 度 差 別 不 大。

    此 類(lèi) 任 務(wù) 包 括:

圖 象 映 象
生 成 整 頁(yè) 的 HTML 的 CGI 腳 本
動(dòng) 畫(huà)
    很 有 特 點(diǎn) 的 是, 對(duì) 于 高 級(jí) 任 務(wù), 用 CGI 比 用 Java 編 程 要 簡(jiǎn) 單 得 多。 此 類(lèi) 任 務(wù) 有:

后 端 數(shù) 據(jù) 庫(kù) 操 作
搜 索 引 擎
多 重 動(dòng) 態(tài) 頁(yè) 面
    其 中, 后 端 數(shù) 據(jù) 庫(kù) 操 作( 存 取 數(shù) 據(jù) 庫(kù) 的 應(yīng) 用 程 序) 體 現(xiàn) 了 CGI 的 優(yōu) 越 性。 CGI 有 一 定 的 歷 史, 其 中 很 多 有 用 的 功 能 都 在 CGI 的 庫(kù) 中 由 別 人 做 好 了; 同 時(shí), 許 多 大 公 司 提 供 了 用 CGI 作好的源代碼。 Java 是 一 種 程 序 設(shè) 計(jì) 語(yǔ) 言, 而 CGI 是 網(wǎng) 關(guān) 程 序 的 功 能 規(guī) 范。 如 果 Java 有 較 大 改 變, 您 得 重 寫(xiě) 整 個(gè) 程 序; 而 CGI 有 較 大 變 化 的, 您 只 要 升 級(jí) CGI 庫(kù) 程 序 即 可。

    然 而, CGI 在 有 些 方 面 還 是 有 局 限 性 的。

1.2 、 CGI 的 局 限 性
    在 圖 象 映 象 和 動(dòng) 畫(huà) 方 面, CGI 程 序 不 如 Java 程 序 開(kāi) 發(fā) 方 便。 現(xiàn) 在 Java 越 來(lái) 越 流 行, CGI 程 序 則 越 來(lái) 越 適 合 編 寫(xiě) 簡(jiǎn) 短 雜 亂 的 程 序 和 數(shù) 據(jù) 庫(kù) 應(yīng) 用 程 序。

1.3 、 CGI 程 序 功 能

    CGI 程 序 的 最 大 特 點(diǎn) 是 可 以 用 任 何 一 種 語(yǔ) 言 編 制, 可 運(yùn) 行 在 任 何 一 種 平 臺(tái) 上, 只 要 它 符 合 CGI 的 規(guī) 范 即 可。 下 表 是 一 個(gè) 比 較:

任 務(wù)                       CGI+HTML       HTML

處 理 表 單                      Yes         No

創(chuàng) 建 WEB 頁(yè) 面 上 非 靜 態(tài) 內(nèi) 容           Yes         No

處 理 圖 象 映 象 文 件                Yes         Yes

在 WEB 頁(yè) 面 和 文 檔 中 搜 索            Yes         No

創(chuàng) 建 表 單                      Yes         Yes

創(chuàng) 建 平 臺(tái) 無(wú) 關(guān) 的 文 檔              Yes         Yes

創(chuàng) 建 聊 天 室 等 交 互 應(yīng) 用 程 序          Yes         No

頁(yè) 面 動(dòng) 態(tài) 生 成                   Yes         No

按 用 戶(hù) 需 要 進(jìn) 行 頁(yè) 面 文 檔 裁 剪        Yes         No



    下 面, 我 們 用 一 系 列“ Hello World ” 程 序 結(jié) 束 本 講:
Perl :
Require "cgi-lib.pl";

PRint &PrintHeader;
print " ";
print "Hello World ";
print &PrintEnv;
exit;

    此 文 件 存 儲(chǔ) 在 C:HTTPDCGI-BIN 目 錄 下, 文 件 名 為 2_1.pl 。 在 瀏 覽 器 中 用 地 址 http://localhost/cgi-bin/2_1.pl 調(diào) 用。 注 意, 此 時(shí) OmniHTTPD 應(yīng) 在 運(yùn) 行。 如 果 一 切 正 常, 您 可 以 在 瀏 覽 器 中 看 見(jiàn)“ Hello World ” 和 環(huán) 境 變 量。

C : #include
#include "html-lib.h"
#include "cgi-lib.h"

int main()
{
    html_header();
    html_begin("Test CGI");
    h1("CGI Program");
    printf(" ");
    h2("CGI Environment Variables");
    print_cgi_env();
    html_end();
    return 0; }

    編 譯 后 將 可 執(zhí) 行 文 件 復(fù) 制 到 C:HTTPDCGI-BIN 下, 改 名 為 2_1.cgi , 用 地 址 http://localhost/cgi-bin/2_1.cgi 調(diào) 用。

上一篇:用Delphi編寫(xiě)CGI程序(二)

下一篇:Delphi4的Winsocket編程

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
學(xué)習(xí)交流
熱門(mén)圖片

新聞熱點(diǎn)

疑難解答

圖片精選

網(wǎng)友關(guān)注

主站蜘蛛池模板: 六盘水市| 康定县| 铜鼓县| 扎鲁特旗| 华池县| 开江县| 浦东新区| 庄浪县| 安吉县| 宜州市| 昂仁县| 吉木萨尔县| 天镇县| 勐海县| 天峻县| 镇平县| 铅山县| 康保县| 乌拉特后旗| 新昌县| 柳江县| 乌拉特中旗| 绥宁县| 延长县| 塔城市| 苍南县| 巴中市| 修武县| 德庆县| 桐柏县| 靖宇县| 通榆县| 共和县| 永胜县| 诸城市| 哈巴河县| 汝城县| 马尔康县| 奉贤区| 成安县| 永济市|