• CGIC函数说明


    CGIC函数说明

    参考cgic函数说明_Embedded Resources Library Online (C)郝博士

    cgiFormResultType cgiFormString( char *name, char *result, int max)

    用于从输入域中copy字符串。他将域名max-1字节中的字符copy到缓冲区result。若域不存在,则copy一个空串到result缓冲区。在此函数中所有的新行由换行符代表。

    cgiFormResultType cgiFormStringNoNewlines( char *name, char *result, int max) 
    它与cgiFormString函数相似,只是所有的CR和LF都被去掉了。

    cgiFormResultType cgiFormStringSpaceNeeded( char *name, int *length) 
    它返回指向name的字符串的长度,并将长度放入length中。

    cgiFormResultType cgiFormStringMultiple( char *name, char ***ptrToStringArray) 
    若同一名字有多个输入域,或域中的字符串可以动态变化,那么你可以使用本函数。它把名为name的所有输入域的值放在prtToStringArray中。

    void cgiStringArrayFree(char **stringArray) 
    它释放了分配给stringArray的内存。

    cgiFormResultType cgiFormInteger( char *name, int *result, int defaultV) 
    从输入域中取出整数放入result中。

    cgiFormResultType cgiFormIntegerBounded( char *name, int *result, int min, int max, int defaultV) 
    若输入域中的整数在界限内则取出并放入result中。

    cgiFormResultType cgiFormDouble( char *name, double *result, double defaultV) 
    从输入域中取出浮点数放入result中。

    cgiFormResultType cgiFormDoubleBounded( char *name, double *result, double min, double max, double defaultV) 
    若输入域中的浮点数在界限内则取出并放入result中。

    cgiFormResultType cgiFormSelectSingle( char *name, char **choicesText, int choicesTotal, int *result, int defaultV) 
    取出复选框(跟在select语句之后的),把选择的名字copy到choicesText,把选择的个数copy到choicesTotal,把当前的选择copy到result。 
    cgiFormResultType cgiFormSelectMultiple( char *name, char **choicesText, int choicesTotal, int *result, int *invalid) 
    与cgiFormSelectSingle类似,只指向整型数组的result代表了选择的项。

    cgiFormResultType cgiFormCheckboxSingle( char *name) 
    若复选框被选中,则函数返回cgiFormSuccess,否则返回cgiFormNotFound。

    cgiFormResultType cgiFormCheckboxMultiple( char *name, char **valuesText, int valuesTotal, int *result, int *invalid) 
    与cgiFormCheckboxSingle类似,但它处理同一名字有多个复选框的情况。name指向复选框的名字;valuesText指向包含有每个复选框中参数的一个数组;valuesTotal指向复选框的总数;result是一个整型数组,每个复选框选中的用1代表,没选中的用0代表。

    cgiFormResultType cgiFormRadio( char *name, char **valuesText, int valuesTotal, int *result, int defaultV) 
    与cgiFormCheckboxMultiple相似,只是这里是单选按钮而不是复选框。

    void cgiHeaderLocation(char *redirectUrl) 
    重定向到redirectUrl指定的URL。

    void cgiHeaderStatus(int status, char *statusMessage) 
    输出状态代码status和消息statusMessage。

    void cgiHeaderContentType(char *mimeType) 
    用于告知浏览器返回的是什么类型的文档。

    cgiEnvironmentResultType cgiWriteEnvironment(char *filename) 
    本函数把当前CGI环境写入filename文件中以便以后调试时使用

    cgiEnvironmentResultType cgiReadEnvironment(char *filename) 
    本函数从filename文件中读取CGI环境以便用来调试。

    int cgiMain() 
    一个程序必须要写这个函数, 这是主程序开始之处。 
    cgic变量参考 
    This section provides a reference guide to the various global variables provided by cgic for the programmer to utilize. These variables should always be used in preference to stdin, stdout, and calls to getenv() in order to ensure compatibility with the cgic CGI debugging features. 
    大多数的变量相当于各种CGI变量,重要的是VGIC的变量不能为空.

    char *cgiServerSoftware 
    服务器软件名称,或者一个空的字符串 or to an empty string if unknown. 
    char *cgiServerName 
    返回服务器名称或空 
    char *cgiGatewayInterface 
    网关接口 (通常是 CGI/1.1),或空 
    char *cgiServerProtocol 
    网络协议(usually HTTP/1.0),或空 
    char *cgiServerPort 
    服务器端口(usually 80),或空 
    char *cgiRequestMethod 
    请求方式 (usually GET or POST),或空 
    char *cgiPathInfo 
    指出附加虚拟路径 
    char *cgiPathTranslated 
    指出附加虚拟路径并由服务器转为本地路径 
    char *cgis criptName 
    调用程序的名字 
    char *cgiQueryString 
    包含 GET-method 请求或者 <ISINDEX> 标签. 这个信息不需要解吸,除非用<ISINDEX>标签通常由CGIC函数库自动解析。 
    char *cgiRemoteHost 
    从浏览器返回客户主机的名字 
    char *cgiRemoteAddr 
    从浏览器返回客户的IP地址 
    char *cgiAuthType 
    返回用户授权信息 
    char *cgiRemoteUser 
    鉴别用户 cgiAuthType. 
    char *cgiRemoteIdent 
    返回用户的名字(用户通过用户坚定协议)这个消息是不安全的,特别是Windows系统。 
    char *cgiContentType 
    返回MIME内型 
    char *cgiAccept 
    参考 cgiHeaderContentType() cgiUserAgent 
    char *cgiUserAgent 
    取的用户浏览器信息 
    char *cgiReferrer 
    指向用户访问的URL. 
    int cgiContentLength 
    表单或查询数据的字节被认为是标准的. 
    FILE *cgiOut 
    CGI输出. cgiHeader函数,象cgiHeaderContentType, 首先被用于输出mime头; 用于 fprintf() 和fwrite(). cgiOut通常相当于stdout。 
    FILE *cgiIn 
    CGI输入. 在决大部分时间你都不会需要这个函数。 
    cgic结果编码参考 
    在大量的按列中, cgic函数有计划的产生合理的结果,甚至浏览器和用户不合理时。无论如何, 有时候知道不合理的事情发生,尤其赋予一个值或定义一个范围是一个不充分的解决方案。下面的这些结果编码有助更好了解。

    cgiFormSuccess 
    提交信息成功 
    cgiFormTruncated 
    删除部分字节. 
    cgiFormBadType 
    错误的输入信息(没有按要求) 
    cgiFormEmpty 
    提交信息为空. 
    cgiFormNotFound 
    提交信息没有找到. 
    cgiFormConstrained 
    数字属于某个特定的范围,被迫低于或高于适当范围。 
    cgiFormNoSuchChoice 
    单一选择提交的值是不被接受。通常说明表但和程序之间存在矛盾。 
    cgiEnvironmentIO 
    从CGI环境或获取的文件读或写的企图失败,报出I/O的错误。 
    cgiEnvironmentMemory 
    从CGI环境或获取的文件读或写的企图失败,报出out-of-memory的错误。 
    cgiEnvironmentSuccess 
    从CGI环境或获取的文件读或写的企图成功。

  • 相关阅读:
    【BZOJ4198】[Noi2015]荷马史诗 贪心+堆
    【BZOJ4200】[Noi2015]小园丁与老司机 DP+最小流
    【BZOJ2839】集合计数 组合数+容斥
    【BZOJ2989】数列 kd-tree
    【BZOJ4240】有趣的家庭菜园 树状数组+贪心
    【BZOJ4238】电压 DFS树
    【BZOJ4237】稻草人 cdq分治+单调栈+二分
    Python Web学习笔记之WebSocket原理说明
    Python Web学习笔记之Cookie,Session,Token区别
    Python Web学习笔记之图解TCP/IP协议和浅析算法
  • 原文地址:https://www.cnblogs.com/zhouhbing/p/4244119.html
Copyright © 2020-2023  润新知