文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | 免费看大片 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院网络编程CGI/Perlcgic: 为C语言编写CGI的C函数库
精品推荐
特别推荐
·在CGI中如何使用cookie的方法
·CGI脚本在WIN2000、WINNT下安装
热点TOP10
·Perl教学 第五篇 文件读写
·在Windows NT 4.0下安装ActivePerl(这是何志强老兄写的呀!)被我收藏了!
·Perl程序员的三种品质:懒惰、急躁和傲慢(转载 来自水木清华"perl的世界")
·ActivePerlPerlIS.dll远程缓冲区溢出漏洞
·Linux系统环境下的Socket编程详细解析
·用机器生成的音乐监控Linux 计算机
·Perl教学 目录
·Perl教学 第一篇 概述
·Perl教学 第二篇 简单变量
·Perl教学 第三篇 操作符

cgic: 为C语言编写CGI的C函数库

日期:2008年3月5日 作者: 查看:[大字体 中字体 小字体]



  作者:siyu

cgic: 为C语言编写CGI的C函数库
由Thomas Boutell开发
目录

CGIC介绍
怎样写CGIC应用程序
怎样产生图片在CGIC中?
CGI调试特征: 利用捕获
cgic函数参考
cgic变量参考
cgic结果编码参考
cgic快速索引

一般的UNIX系统都支持ANSIC,增加相应的库函数(和相应的h文件)就可以实现CGI。在此我向大家推荐一个用于CGI编程的ANSIC库:cgic。

cgic是用来生成基于CGI的WWW应用程序的C语言函数库,它有以下功能:

*对数据进行语法分析

*接收以GET和PSOT两种方式发送的数据

*把FORM中的不同域连接成连续的串

*为检索FORM数据而提供字符串,整数,浮点以及单项和多项选择功能

*为数字字段提供边界检测

*把CGI环境变量加载到非空的C串中

*为调试而捕捉CGI状态

*提供相对安全的系统调用功能

用一般ANSI C或C++编译器就可以编译cgic程序,不过与通常C程序不同的是,用cgic写的源码其主函数是cgiMain(),而不是通常的main()。cgic的函数库会自动把cgiMain连接到相应的main()上去。


--------------------------------------------------------------------------------


写CGIC程序
Note: 所有的cgic应用程序必须连接cgic.c.
用cgimain()替代main() 必须包含: #include"cgic.h."

基本结构cgictest.c:


int cgiMain() {
#if DEBUG
/* Load a saved CGI scenario if we're debugging */
cgiReadEnvironment("/path/to/capcgi.dat");
#endif
/* Important: we must indicate the type of document */
cgiHeaderContentType("text/html");
/* Now invoke other functions to handle each part of the form */
fprintf(cgiOut, "<HTML><HEAD>\n");
fprintf(cgiOut, "<T99vLE>cgic test</T99vLE></HEAD>\n"):
fprintf(cgiOut, "<BODY><H1>cgic test</H1>\n");
Name();
Address();
Hungry();
Temperature();
Frogs();
Color();
Flavors();
NonExButtons();
RadioButtons();
fprintf(cgiOut, "</BODY></HTML>\n");
/* This value will be the exit code of the program; 0
generally indicates success among Unix and DOS programs */
return 0;
}

capture
输出标头
cgiHeaderContentType()在输出文挡之前简要说明MIME内型,如 "text/html"。
cgiHeaderStatus()代替输出错误代码 cgiHeaderLocation()代替重新引导至其他页面。在一个独立的应用程序中只能有一个cgiHeader函数。

重点:在cgiHeader函数组中, cgiHeaderContentType(), 在任何向浏览器输出之前被调用. 否则将出错或浏览器不能识别。 cgiOut

接着, cgiMain() 调用不同的函数.当函数结束后,将返回0


处理输入文本
void Name() {
char name[81];
cgiFormStringNoNewlines("name", name, 81);
fprintf(cgiOut, "Name: %s<BR>\n", name);
}

这个函数的功能就是取的并显示由用户输入的name .
处理输出
Important: cgiOut通常相当于stdout

cgiFormString 确保断航

处理单一Checkboxes输入
这个Hungry() function确定用户是否选择"hungry"这个 checkbox:
void Hungry() {
if (cgiFormCheckboxSingle("hungry") == cgiFormSuccess) {
fprintf(cgiOut, "I'm Hungry!<BR>\n");

[1] [2] [3] 下一页 




上一篇:CGI 拒绝服务攻击技术浅析

下一篇:cgilib例

相关文章:
·经典爱情语言
·业务员打死也不能说的9类语言
·自己动手做一个数学函数作图器
·编写质量手册
·C语言编程易犯毛病集合
·2007年十大网络语言排行榜
·JS经典源码:通用javascript脚本函数库
·Flash AS教程之四 动态文本的编写以及外部文本的载入
·用VB编写记事本
·Excel的HYPERLINK函数应用解疑一则
相关软件:
·C语言程序设计
·C函数浏览
·经典 C++语言教程
·Windows环境下32位汇编语言程序设计
·系列语言网页设计
·汇编语言入门教程PPT
·C语言程序设计视频教程 CSF 教材:谭浩强《c程序设计》
·虾(C)语言实例教程 V1.75
·Excel2003函数应用完全手册
·单片机学习及实用套件 有完整c语言程序和电路图

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.viphot.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.viphot.com All Rights Reserved. 鄂ICP备05000083号Powered by:viphot