




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4讲 标题 CGI模块介绍与编写 本讲任务 1 cgi介绍2 cgi功能3 cgi处理步骤4 cgi优点5 cgi进程模块功能描述6 cgi通讯系统7 表单8 Get和post介绍9 cgi典型举例 本讲目标 1 了解cgi2 了解cgi功能3 了解cgi处理步骤4 了解cgi优点5 了解cgi进程模块功能描述6 了解cgi通讯系统7 了解表单8 了解Get和post介绍9 了解cgi典型举例 cgi介绍 Cgi 通用网关接口 CommonGatewayInterface 它是一段程序 运行在服务器上 提供同客户端HTML页面的接口 通俗的讲CGI就像是一座桥 把网页和WEB服务器中的执行程序连接起来 它把HTML接收的指令传递给服务器 再把服务器执行的结果返还给HTML页 cgi功能 绝大多数的CGI程序被用来解释处理来自表单的输入信息 并在服务器产生相应的处理 或将相应的信息反馈给浏览器 CGI程序使网页具有交互功能 cgi处理步骤 通过Internet把用户请求送到服务器 服务器接收用户请求并交给CGI程序处理 CGI程序把处理结果传送给服务器 服务器把结果送回到用户 cgi优点 CGI可以为我们提供许多HTML无法做到的功能 比如a 一个记数器b 顾客信息表格的提交以及统计c 搜索程序d WEB数据库 用Html是没有办法记住客户的任何信息的 就算用户愿意让你知道 用Html也是无法把信息记录到某一个特定文件里的 要把客户端的信息记录在服务器的硬盘上 就要用到CGI 这是CGI最重要的作用 它补充了Html的不足 是的 仅仅是补充 不是替代 使在网络服务器下运行外部分应用程序 或网关 成为可能 CGI BIN目录是存放CGI脚本的地方 这些脚本使WWW服务器和浏览器能运行外部程序 而无需启动另一个原因程序 它是运行在Web服务器上的一个程序 并由来自于浏览者的输入触发 CGI是在HTTP服务器下运行外部程序 或网关 的一个接口 它能让网络用户访问远程系统上的使用类型程序 就好像他们在实际使用那些远程计算机一样 cgi进程模块功能描述 绝大多数的CGI程序被用来解释处理来自表单的输入信息 并在服务器产生相应的处理 或将相应的信息反馈给浏览器 CGI程序使网页不再是静态的 而是具有交互功能 到时做好的cgi程序放在服务器www cgi bin里面 cgi程序不能跳出www文件夹取其他文件夹的资源 这里说一下我们项目用到的Web服务器主机 我们的移植在前端板子上面的Web服务器叫做Boa 它是一个非常小巧的服务器 执行代码大约60KB左右 它是一个单任务的Web服务器 只能一次完成用户的请求 而不会fork出新的进程来处理并发的链接请求 但是Boa支持Cgi 能够为Cgi程序fork出一个进程来执行相应的客户请求 cgi进程模块功能描述 网页 web 也就是网站上的某一个页面 它是一个纯文本文件 是向浏览者传递信息的载体 以超文本和超媒体为技术 采用HTML CSS XML等语言来描述组成页面的各种元素 包括文字 图像 音乐等 并通过客户端浏览器进行解析 从而向浏览者呈现网页的各种内容 我们项目采用adobedreamweavercs5这个软件对网页进行编辑 做好的网页放在boa服务器的WWW文件里 客户端浏览器对哪个网页有请求服务器就把页面发送给浏览器 cgi通讯系统 Cgi通讯系统由两个部分组成 1 html页面 就是客户端浏览器上显示的页面 2 运行在Boa服务器上的Cgi程序 这个流程图或许让你把他们之间的通讯方式看得更加清楚 cgi通讯系统 服务器和客户端之间的通信 是客户端的浏览器和服务器端的http服务器之间的HTTP通信 我们只需要知道浏览器请求执行服务器上哪个CGI程序就可以了 其他不必深究细节 因为这些过程不需要程序员去操作 服务器和CGI程序之间的通讯才是我们关注的 一般情况下 服务器和CGI程序之间是通过标准输入输出来进行数据传递的 而这个过程需要环境变量的协作方可实现 1 服务器将URL指向一个应用程序 这个应用程序即Cgi程序 cgi 2 服务器为应用程序执行做准备 3 应用程序执行 读取标准输入和有关环境变量 4 应用程序进行标准输出更通俗点讲 网页里面有个变量 环境变量 变量里面有个值 通过某种方式把这个值传到cgi程序中 cgi程序中提取这个变量的值 根据这个值做出相应的处理 表单 表单是html中这个标签的翻译 表单有属于它自己的表单元素 有输入框 单行 多行 单选按钮 多选按钮 下拉选项等 这些也叫表单项 这些东西只要打开dreamweaver随便建个html就可以看到它的表单元素 当你打开一个网页的时候 你输入的文字或者做出的选择 类似等等要提交信息的地方基本上都是属于表单元素 这些表单元素 表单项 都必须放在表单内 而整个表单在网页是看不到的 你可以理解它为一个容器 里面装着你要发给服务器的东西 表单的提交过程 这是html中的一个代码段 type submit 是指提交表单 为什么需要表单 由于HTML只能显示静态网页 无法和服务器活动数据进行交互 所以要通过表单与服务器互动 就跟你去银行办业务 人家要你在表上填一堆东西 然后把表提交给业务员 那个表就是表单 网站表单类似这种包含了许多用户填写的信息 提交给服务器 服务器获取填写的信息后执行相应操作 Get和post介绍 get方式 以URL字串本身传递数据参数 在服务器端可以从 QUERY STRING 这个变量中直接读取 效率较高 但缺乏安全性 也无法来处理复杂的数据 只能是字符串 比如在servlet jsp中就无法处理发挥java的比如vector之类的功能 post方式 就传输方式讲参数会被打包在数据报中传输 从CONTENT LENGTH这个环境变量中读取 便于传送较大一些的数据 同时因为不暴露数据在浏览器的地址栏中 安全性相对较高 但这样的处理效率会受到影响 Get和post介绍 比如下面这个表单 当out cgi收到请求时 需要把输入框 name 和输入框 number 内的值提取出来 而且不管form中的action是GET还是POST 都要有效 下面给出示例代码 说明 从上面的代码可以看出 第13行和第14行获取了输入框的值 获取输入参数值在CGIC中其实有一族函数 cgiFormString是其中最常用的一个 cgiFormStringNoNewlines用来去掉换行符 如果用户是在一个TextArea里输入字符的话 cgiFormStringSpaceNeeded用于测试输入值的长度 可以以此为依据 然后按需精确分配缓冲区 项目cgi代码举例 cgiHeaderContentType text html fprintf cgiOut n fprintf cgiOut n fprintf cgiOut 登录提示 n if sqlite3 open user db 什么是cgi 答案 cgi为CommonGatewayInterface的缩写 即通用网关接口 是一个Web服务器主机提供信息服务的标准接口 通过CGI接口 Web服务器就能够获取客户端提交的信息 转交给服务器端的CGI程序进行处理 最后返回结果给客户端 一个cgi通信系统有两部分组成 一部分是html页面 就是在用户端浏览器上看到的页面 另一部分则是cgi程序 该程序运行在服务器上 客户端服务器cgi程序 简述cgi处理步骤 答案 通过Intern
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 六年级下册品德教学设计-《12.留下我们的纪念》∣人民未来版
- 第五课 设计贺卡说课稿-2023-2024学年小学信息技术(信息科技)四年级下册川教版
- 人教版高三生物必修二第三章 第二节 DNA分子的结构 教学设计
- 4.5应对地质灾害 教学设计-2024-2025学年科学五年级上册大象版
- 第一节 物联网概述教学设计-2025-2026学年高中信息技术华东师大版2020选择性必修2 网络基础-华东师大版2020
- 高中政治 第三专题 联邦制、两党制、三权分立:以美国为例 第三框题 美国的三权分立制说课稿 新人教版选修3
- Unit3 lesson6说课稿 2024-2025学年冀教版(2024)七年级英语上册
- 2.3 细菌和真菌说课稿说课稿-2025-2026学年华东师大版七年级上册科学
- 实践项目-创作简历教学设计-2025-2026学年初中信息技术泰山版七年级下册-泰山版
- 【英语】山东省青岛市胶州市部分学校2024-2025学年高一下学期6月月考试题(解析版)
- 2025年交通工程师资格考试试题及答案解析
- 2025年私人住宅装修合同及详细工程清单
- 2025年法本法硕真题及答案
- 变压器装配工职业技能考核试卷及答案
- 驻场人员管理协议书8篇
- 秋季传染病健康知识培训课件
- 2025一级建造师考试《港口与航道工程》真题及答案
- 2024年一级建造师《建筑工程管理与实务》真题及答案
- 2025-2030矿山机械轻量化设计技术突破与应用前景分析报告
- 中职学生实训安全管理手册
- 配阴婚协议书范本
评论
0/150
提交评论