社区
C语言
帖子详情
关于用C语言编写CGI
King
2000-01-26 10:05:00
用C如何能获得WEB页面的数据?
在PERL用变量=$ENV{'QUERY_STRING'}或read(STDIN,变量,$ENV{'CONTENT_LENGTH'})读取的WEB页POST或GET方法的环境变量,在C语言(我用Turbo C2.0:)中是否有等价的方法?什么版本的C可以实现?希望提供关键的源代码。
...全文
515
13
打赏
收藏
关于用C语言编写CGI
用C如何能获得WEB页面的数据? 在PERL用变量=$ENV{'QUERY_STRING'}或read(STDIN,变量,$ENV{'CONTENT_LENGTH'})读取的WEB页POST或GET方法的环境变量,在C语言(我用Turbo C2.0:)中是否有等价的方法?什么版本的C可以实现?希望提供关键的源代码。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zalilea
2000-05-30
打赏
举报
回复
对于xubin_sh恢复的解答我感到不是很好。只提到了一种解决方法。标准CGI中页面上传方式有GET和POST两中方式。他的解决方案中只提到了用POST的方式。GET方式数据的输入是通过QUERY_STRING环境变量传入的,对于POST方式数据是通过标准输入设备stdin输入的。对于GET方式可以用getenv("QUERY_STRING")函数得到输入的数据,相当于perl中的变量=$ENV{'QUERY_STRING'}。对于POST方式用直接从stdin读入的方式可以得到,相当于PERL中的read(STDIN,变量,$ENV{'CONTENT_LENGTH'})。具体的源码可以根据实际的情况有不同的表现。
King
2000-01-27
打赏
举报
回复
问题又来了,用Turbo C的标准输出语句例如puts,printf等怎么浏览器不接受?
xubin_sh
2000-01-27
打赏
举报
回复
非也,键盘输入好象是1024,这个有可能无所谓,你试试看
King
2000-01-27
打赏
举报
回复
好,我试一试。还有一句,在DOS下的输入不是最大256Byte吗?
xubin_sh
2000-01-27
打赏
举报
回复
#include <stdio.h>
void main(int argc,char** argv,char** envp)
{
puts("content-type:text/html\r\n\r\n");
while (envp++,*envp!=NULL){
puts(*envp);
puts("<BR>");
}
}
已调试过
要读post的值
首先:
判断REQUEST_MOTHOD是否等于POST
然后读标准输入:就是post过来的东西
King
2000-01-26
打赏
举报
回复
好,谢了。
xubin_sh
2000-01-26
打赏
举报
回复
e-mail:xubin_sh@163.net
icq:58231294
King
2000-01-26
打赏
举报
回复
行啊,但以后我有问题怎么找你呢?
xubin_sh
2000-01-26
打赏
举报
回复
这是c++语法,
上面的例子中不需要#include <stdio.h>这一行
iostream.h相当与stdio.h
cout是输出,可以用printf代替
cin是输入,可以用scanf代替
#include <stdio.h>
include <stdio.h>
#include <iostream.h>
#include <string>
void main(int argc,char ** argv,char ** arge)
{
puts("content-type:text/html\r\n\r\n");
while ((arge)++,*arge!=NULL){
puts(*arge);
puts("<BR>");
}
}
我没调试过
可以给分数吗?:-)
King
2000-01-26
打赏
举报
回复
谢谢xubin_sh,我手头上的C没有iostream.h这个头文件,但会尽快试试:)
xubin_sh
2000-01-26
打赏
举报
回复
#include <stdio.h>
#include <iostream.h>
#include <string>
void main(int argc,char ** argv,char ** arge)
{
string str;
cin >> str;
cout << "content-type:text/html\r\n\r\n";
cout << "abc\r\n<br>";
while ((arge)++,*arge!=NULL){
cout << *arge << "<BR>";
}
}
然后,判断进行字符串判断找到“QUERY_STRING”
以上代码可在任何os上编译
King
2000-01-26
打赏
举报
回复
cin>>str的办法不行啊。
King
2000-01-26
打赏
举报
回复
又有问题,如何取得Post方法的数据?
用
C语言
编写
CGI
程序
教你如何用
C语言
编写
CGI
程序,并有例子分析。
c语言
编写
的
cgi
程序
C语言
编写
的
cgi
程序,get方式读取参数,并对文件处理
C语言
写
CGI
程序详细教程
用
C语言
编写
的
CGI
程序具 有执行速度快、安全性高等特点。 内容介绍的比较详细
支持
C语言
编写
CGI
的服务器TinyWeb web server
支持
C语言
编写
CGI
的服务器TinyWeb web server http://itsecuritylab.eu/index.php/tag/tiny-web-server-
cgi
/
C语言
编写
的
CGI
开发库(linux)
前段时间用C开发一个
CGI
项目,用到其中的一些库,包含大部分API。希望对用C开发的TX有帮助!
C语言
69,371
社区成员
243,082
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章