CGI 编程方式学习
2012-01-10 11:07
120 查看
1.大家都知道CGI是通用网关接口,可以用来编写动态网页。而且CGI可以用很多种语言来写,用perl来编写最常见,
我这里就是用perl来编写做例子。讲到编写CGI编程方式,编写CGI有两程编程风格。
(1)功能型编程(function-oriented style)
这种编程方式,不要自己去创建一个对象了,它本身就内置好了一个对象去使用。虽然它内置了一个对象,有些功能并没有
都加载进去,这里面可以自己定义开起哪些功能。注:在加载功能集时前面要加一上 : 才行
如
一. :cgi
加载cgi-handing methods,如param().
二. :form
加载form表单,如textfied().
三. :html2 :html3 :html4
加载所有html2标签,加载所有html3标签,加载所有html4标签
四. :[b]netscape[/b]
加载所有<blink>, <fontsize> and <center> 标签。
五. :[b]html[/b]
加载这个就相当于加载了'html2','html3','html4','netscape'。
六. :standard
加载这个就相当于加一个标准的CGI,就等于加载了'html2', 'html3', 'html4', 'form' 和 'cgi'。
七. :all
将加载所有可用的功能集。
例子:这个例子引用的是perldoc-CGI 上面的
还有一些其它的功能,现在就不讲了,讲一个cgi调试的功能,
-debug
这样可调试,用户输入的任何信息。
(2)面向对象编程(object-oriented style)
这程编程方式,没有创建默认的对象,需要自己去创建。
如
就这么简单。
功能型编程没有面向对象编程灵活,它里面的都定义好了,面向对象的可以想要的时候自己去定义,个人喜欢用面向对象编程方式去编写CGI的脚本。
我这里就是用perl来编写做例子。讲到编写CGI编程方式,编写CGI有两程编程风格。
(1)功能型编程(function-oriented style)
这种编程方式,不要自己去创建一个对象了,它本身就内置好了一个对象去使用。虽然它内置了一个对象,有些功能并没有
都加载进去,这里面可以自己定义开起哪些功能。注:在加载功能集时前面要加一上 : 才行
如
#!/usr/bin/perl –w use CGI qw(:standard);
一. :cgi
加载cgi-handing methods,如param().
二. :form
加载form表单,如textfied().
三. :html2 :html3 :html4
加载所有html2标签,加载所有html3标签,加载所有html4标签
四. :[b]netscape[/b]
加载所有<blink>, <fontsize> and <center> 标签。
五. :[b]html[/b]
加载这个就相当于加载了'html2','html3','html4','netscape'。
六. :standard
加载这个就相当于加一个标准的CGI,就等于加载了'html2', 'html3', 'html4', 'form' 和 'cgi'。
七. :all
将加载所有可用的功能集。
例子:这个例子引用的是perldoc-CGI 上面的
#!/usr/bin/perl -w use CGI qw/:standard/; print header, start_html('Simple Script'), h1('Simple Script'), start_form, "What's your name? ",textfield('name'),p, "What's the combination?", checkbox_group(-name=>'words', -values=>['eenie','meenie','minie','moe'], -defaults=>['eenie','moe']),p, "What's your favorite color?", popup_menu(-name=>'color', -values=>['red','green','blue','chartreuse']),p, submit, end_form, hr,"\n"; if (param) { print "Your name is ",em(param('name')),p, "The keywords are: ",em(join(", ",param('words'))),p, "Your favorite color is ",em(param('color')),".\n"; } print end_html;
还有一些其它的功能,现在就不讲了,讲一个cgi调试的功能,
-debug
#!/usr/bin/perl -w use CGI qw/:standard -debug/; print header, start_html('Simple Script'), h1('Simple Script'), start_form, "What's your name? ",textfield('name'),p, "What's the combination?", checkbox_group(-name=>'words', -values=>['eenie','meenie','minie','moe'], -defaults=>['eenie','moe']),p, "What's your favorite color?", popup_menu(-name=>'color', -values=>['red','green','blue','chartreuse']),p, submit, end_form, hr,"\n"; if (param) { print "Your name is ",em(param('name')),p, "The keywords are: ",em(join(", ",param('words'))),p, "Your favorite color is ",em(param('color')),".\n"; } print end_html;
这样可调试,用户输入的任何信息。
(2)面向对象编程(object-oriented style)
这程编程方式,没有创建默认的对象,需要自己去创建。
如
#!/usr/bin/perl –w use CGI; my $q = new CGI; print $q->header, $q->start_html(-title=>'The test CGI'), "hello word!" $q->end_html;
就这么简单。
功能型编程没有面向对象编程灵活,它里面的都定义好了,面向对象的可以想要的时候自己去定义,个人喜欢用面向对象编程方式去编写CGI的脚本。
相关文章推荐
- 一脸懵逼学习MapReduce的原理和编程(Map局部处理,Reduce汇总)和MapReduce几种运行方式
- spring学习笔记7--使用spring进行面向切面的(AOP)编程(1)注解方式实现
- Mybatis学习之接口的方式编程(2)
- 并发编程学习总结(一) :java 创建线程的三种方式的优缺点和实例(转载自:http://blog.csdn.net/u011784767/article/details/51315007)
- Perl/CGI脚本语言编程学习资源下载地址大全
- MyBatis学习笔记(二)---以接口方式编程
- STM32 学习七 USART通信2 寄存器方式编程
- STM32 学习八 USART通信3 库函数方式编程
- java网络编程:网络连接方式(学习李宁的极客世界)
- 必须快速进入具体的编程方式的学习过程中
- [摘自MSDN] ASP.Net2.0学习 [1] 母版页 6 : 以编程方式使用 ASP.NET 母版页
- JAVA并发编程学习笔记------线程的三种创建方式
- 新手学习编程的最佳方式是什么?
- CGI 编程学习
- Perl/CGI脚本语言编程学习资源下载地址大全
- Mybatis学习笔记二:以接口方式编程
- 还在看视频读文档学编程?这有7种编程学习方式,哪种最适合你?
- 新手学习编程的最佳方式
- Mybatis学习(2)以接口的方式编程