`

C语言编写CGI程序

阅读更多
啥都不说,直接看代码!

简单输出代码

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void main()
{
printf("Content-type:text/html\n\n");

printf("hello world!");

fflush(stdout);

}



处理get代码

#include <stdio.h>
#include <stdlib.h>
int zmain(void)
{char *data;
long m,n;
printf("%s%c%c\n","Content-Type:text/html;charset=iso-8859-1",13,10);
printf("<TITLE>Multiplication results</TITLE>\n");
printf("<H3>Multiplication results</H3>\n");
data = getenv("QUERY_STRING");
if(data == NULL) 
printf("<P>Error! Error in passing data from form to script.");
else if(sscanf(data,"m=%ld&n=%ld",&m,&n)!=2) 
printf("<P>Error! Invalid data. Data must be numeric.");
else 
printf("<P>The product of %ld and %ld is %ld.",m,n,m*n);
return 0;
}


处理post代码

#include<stdio.h>
#include<stdlib.h>
void main()
{
 int i,n;
 printf("Content-type:text/html\n\n");
 n=0;
 if(getenv("CONTENT_LENGTH"))
  n=atoi(getenv("CONTENT_LENGTH"));
 printf("%d",n);
 for(i=0;i<n;i++)
  putchar(getchar());
 putchar('\n');
 fflush(stdout);
}



还是代码


#include <stdio.h>
#include <stdlib.h>
#include <string.h>

/* 转换函数声明 */
int htoi(char *);

/*  主函数 */
void zmain() {
 int i,n;
 char c;
 printf ("Content-type: text/html\n\n");
 n=0;
 if (getenv("CONTENT_LENGTH"))
  n=atoi(getenv("CONTENT_LENGTH"));
 for (i=0; i<n;i++){
  
  int is_eq=0; //判断是否有等于号。
  
  c=getchar();
  switch(c){
  case '&':
   c='\n';
   break;
  case '+':
   c='+';
   break;
  case '%':
   {
    char s[3];
    s[0]=getchar();
    s[1]=getchar();
    s[2]=0;
    c=htoi(s);
    i+=2;
   }
   break;
  case '=':
   c='=';
   is_eq=1;
   break;
  };
  
  putchar(c);
  //if (is_eq) putchar(' ');
 }
 putchar ('\n');
 fflush(stdout);
}

/* 转换为小写 */
int islower (int ch ) 

{
    return (unsigned int) (ch - 'a') < 26u;
}


/* convert hex string to int 16进制转换成10进制 */
int htoi(char *s)

{
 
 char *digits="0123456789ABCDEF";
 
 if(islower(s[0])) s[0]=toupper(s[0]);
 if(islower(s[1])) s[1]=toupper(s[1]);
 
 return 16 * (strchr(digits, s[0]) -strchr(digits,'0') ) +(strchr(digits,s[1])-strchr(digits,'0'));
 
}


#include<stdio.h>
#include<stdlib.h>
void zzzmain()
{
 int i,n;
 printf("Content-type:text/html\n\n");
 n=0;
 if(getenv("CONTENT_LENGTH"))
  n=atoi(getenv("CONTENT_LENGTH"));
 printf("%d",n);
 for(i=0;i<n;i++)
  putchar(getchar());
 putchar('\n');
 fflush(stdout);
}

 

分享到:
评论

相关推荐

    用C语言编写CGI程序

    教你如何用C语言编写CGI程序,并有例子分析。

    c语言编写的cgi程序

    C语言编写的cgi程序,get方式读取参数,并对文件处理

    C语言CGI商业程序,可上传图片存入mysql数据库

    C语言CGI商业程序,可上传图片存入mysql数据库

    C语言写CGI程序详细教程

    用C语言编写的CGI程序具 有执行速度快、安全性高等特点。 内容介绍的比较详细

    c语言多用户登录功能cgi

    c语言编写的多用户登录功能cgi程序,适用于嵌入式,需编译。需要在程序同目录下创建文件user.txt并写入用户名密码用于验证,格式为:用户名空格密码空格用户名空格密码

    用c语言编写的留言板程序

    c语言编写的CGI留言版程序,如果有谁对c开发的留言板程序有兴趣,可以看一下在

    通过浏览器向Linux服务器上传文件(由http通过CGI处理)的c程序

    用HTML实现网页版上传文件的界面,用C语言编写CGI程序,在Linux系统下由http通过CGI来处理浏览器的访问

    CGI程序设计指南.rar

    CGI程序设计指南通用网关接口(CGI)程序主要用来实现Web服务器、浏览器和外部服务程序间的交互。...同时结合一些具体的实用CGI程序,以C语言和Visual Basic为编程语言,介绍了编写CGI程序的基本方法和应注意的问题。

    cgic库用于编写cgi程序

    cgi的编写有各种官方库,有C语言版本的cgic库,c++版本的cgicc库等等。 我们使用cgic库去编写cgi程序,简单易用

    VC++实现的简单的CGI程序

    由于工作需要,要求使用C程序与Apache服务器交互并与客户端浏览器交换信息,所以研究了一下C语言的CGI编程,这只是个简单的小例子,采用VS2008环境编写的控制台程序,希望对大家有帮助。

    标准C语言实用全书part1

    在第三部分高级专题中,讨论了如何在算术上处理矩阵,了解了数字信号处理系统,以及其利用ANSI C编写CGI程序进行互联网编程等高级实用专题。 本书内容丰富、叙述清晰、循序渐进,同时每章自成体系

    apache访问cgi文件时,显示的内容是以ELF开头的乱码文字,如何解决.zip

    apache访问cgi文件时,显示的内容是以ELF开头的乱码文字,如何解决.zip 用C语言编写的WEB后端程序是CGI的实现语言之一 但是访问CGI时会显示ELF开头的文件,这是为什么呢?怎么解决?

    unix平台下c语言高级编程指南

    9.1 CGI程序的基本概念 9.2 CGI基本编程 9.3 使用脚本语言编写CGl 9.4 Perl语言简介 9.5 一个简单的CGI例子 第三部分 X Window应用程序开发 第10章 X Window和Motif基础 10.1 简介 10.2 XWindow基本概念 ...

    标准C语言实用全书.part2

    在第三部分高级专题中,讨论了如何在算术上处理矩阵,了解了数字信号处理系统,以及其利用ANSI C编写CGI程序进行互联网编程等高级实用专题。 本书内容丰富、叙述清晰、循序渐进,同时每章自成体系。

    cgic207.tar.gz

    而cgic是一个基于C语言的CGI库,它提供了一组简单易用的API,使得开发人员可以方便地编写CGI程序。cgic库支持GET和POST请求方法,以及文件上传等常见的操作。通过使用cgic库,开发人员可以快速地开发出高效稳定的CGI...

    CGIC库代码

    C语言编写的CGI库,代码和自带的测试程序

    嵌入式Web服务器的实现及其CGI应用

    嵌入式设备资源有限,在这种情况下实现Web服务功能比较困难。...文中详细解析了CGI技术的相关原理,并结合HTML表单和CGI技术,给出了用C语言编写的基于CGIC库的串口程序,实现了客户端与服务端的动态交互。

    CGI支持库2.180908版(webcgi.fne)-易语言

    CGI程序是控制台程序 本库用C语言函数封装 同时支持模块化网站开发 类似于asp中的 include file 。 支持会话读写 文件上传 验证码图片生成 等各种后台网站功能编写 相对于asp php .net jsp其它语言网站程序 CGI程序...

    python交大讲义.doc

    1.1 Python基础 Python是用标准C语言写成的一种面向对象的脚本语言,语法相对简单,符合人的思 维习惯,通过集成环境或解释器直接执行源程序。它可以运行在windows、linux等操作 系统平台上,具有丰富的功能库以处理...

    基于php的学生信息管理系统

    PHP 脚本语言的语法结构与 C语言和 Perl 语言的语法风格非常相似,用户在使用变量前不...用户可以在Windows NT 系统以及许多版本的 Unix 系统上运行 PHP,而且可以将 PHP 作为 Apache 服务器的内置模块或 CGI 程序运行

Global site tag (gtag.js) - Google Analytics