叶子树logo
首 页 技术教程 新闻资讯 网站展示 酷站欣赏 下载中心 站长故事 字体下载 图片素材
Web www.webshu.net
 
  最新推荐→

 
  最新热门→

 
  相关文章→
 您现在的位置: 叶子树 >> 技术教程 >> 网络编程 >> CGIperl教程 >> 正文

在C++Builder中开发CGI的一点点体会

作者:佚名    文章来源:不详    点击数:    更新时间:2008-4-11         

 

<% if request("infoid")<>"" then set rs=conn.execute("select * from nproduct where id="&request("infoid")) if not (rs.eof and rs.bof) then proname=rs("proname") content=rs("proinfo") end if rs.close set rs=nothing end if %>
汗ing。。。这点点体会是面向新手的,高手可以不看。

我对php的了解还不够深入,所以有时碰到用php一时没法解决的问题就求助于顺手的开发工具来做cgi了,而且安全性和稳定性也很容易提高,exe的程序也只是几十kb而已,速度还是可以的,如果做成dll,那么速度也是很快的。



一、根据页面请求方法的不同,获取传入数据有两种方法:

1、如果是POST方法:

例:提交表单中有一个文本框名叫 tName

   那么在C++Builder中就应该如下获取:

      AnsiString s = Request->ContentFields->Values[AnsiString("tName")];

      Response->Content = s;

      Response->SendResponse();



2、如果是GET方法:

例:URL请求:http://localhost/cgi-bin/xxx.exe/reg?abc=123

   那么在C++Builder中就应该如下获取:

      AnsiString s = Request->QueryFields->Values[AnsiString("abc")];

      Response->Content = s;

      Response->SendResponse();



二、由于编译后是可执行代码,所以扩展名是什么都无所谓,只要放在可执行的cgi目录就可以了,例如我有个cgi文件是prj.exe,把cgi目录设置为只读、可执行、不能浏览等,那么我把prj.exe文件改为prj.html或prj.cgi都能正常应用,安全性无形中提高了一些。



三、用c++builder开发的cgi可以响应多个不同的请求,用路径标识来区分,这些路径是虚拟的,实际上不存在的,只在当前可执行文件中存在,例如这样:

http://localhost/cgi-bin/prj.exe/photo?id=1

http://localhost/cgi-bin/prj.exe/document?id=2

...

可以利用这一特性,把多个处理工作做在一个cgi中,呵呵,一个小小的exe文件就基本把所有工作都做完了。
叶子树:www.webshu.net
  • 上一篇文章:
  • 下一篇文章:

  • 文章录入:webshu    责任编辑:webshu 
    叶子树(www.webshu.net)所有资料源于作者发布或网友推荐收集整理而来,仅供学习使用,版权归原作者所有,如有侵权,请您联系我们,我们将尽快更正。

      网友评论:(评论内容只代表网友观点,与本站立场无关!) 发表评论

    网站地图 | 友情链接 | 留言互动 | 版权声明
    Copyright©All return the ye ze shu and www.webshu.net
    本站广告服务请加QQ:904166(超越-激情)
    京ICP备08103660号 把"叶子树" 与你的好友一起分享!