人机交互的实现(《PHP开发从入门到精通》).ppt

PHP主要用于进行动态网页的开发 动态网页最显著的一个特点即要实现良好的人机交互功能 对用户输入或者选择的内容能做出相应的回应 这也是动态网页区别于静态网页的一大特征 对于其他的CGI等动态技术 同样也具备这种良好的人机交互功能 人机交互一般通过两种方式 一种方式是采用表单 通过表单不同的选项或者输入不同的内容 返回的结果也不同 另一种方式是采用URL地址加上各种参数实现互动 参数不同 返回的内容也不同 第10章人机交互的实现 网站开发专用书 例10 1 前台表单程序的制作 用户注册表单 本实例也可以直接保存为 html的静态页面 具体的表单元素已经在 例3 6 中详细介绍了 这里不再重复讲解 但有一点要注意 复选框checkbox的值的获取 在命名表单时使用favorites 形式 这样在提交时 提交的内容就会以favorites 0 favorites 1 favorites n 的形式出现 获取时使用循环来遍历数组 例10 2 用PHP验证表单 POST与 FILES的运用 若将php ini中的GLOBAL值设置为on 则这些被提交的变量 如user等 可以用 POST user 引用 也可以直接用全局变量 user进行引用 获取文本框 密码框 文本字段 单选按钮 下拉列表 菜单等表单元素的值 可以使用 POST 表单元素名 进行获取 见如下代码 user POST user 获取输入框user的值 email POST email 获取输入框email的值 pass1 POST pass1 获取密码框pass1的值 pass2 POST pass2 获取确认密码框pass2的值 marriage POST marriage 获取单选按钮marriage的值 year POST year 获取日期年 month POST month 获取日期月 day POST day 获取日期日 birthday year 年 month 月 day 日 连接年月日 获取出生日期 sex POST sex 获取下拉列表sex的值 content POST content 获取文本字段content的值 例10 2 用PHP验证表单 POST与 FILES的运用 复选框checkbox的值的获取应采取遍历数组的方式 在命名表单时使用favorites 这种形式 这样在提交时 提交的内容就会以favorites 0 favorites 1 favorites n 的形式出现 获取时只需要使用循环来遍历数组即可访问复选框选项 见如下代码 例10 2 用PHP验证表单 POST与 FILES的运用 其中 POST 以及后面要讲到的 GET 可以用全局变量 REQUEST 来替换 效果相同 如 POST user 等价于 REQUEST user 当你不记得或者分辨不出什么时候该用 POST或 GET时 改用 REQUEST是最安全的方法 文件组件值采用全局变量 FILES 进行获取 全局变量 FILES自PHP4 1 0起存在 在更早的版本中用 HTTP POST FILES替代 此数组包含所有上传的文件信息 本例中在进行相片上传中用到了该变量 我们假设文件上传字段的名称如本例所示 为upfile 名称可随意命名 表10 1列举了 FILES数组的内容 例10 2 用PHP验证表单 POST与 FILES的运用 表10 1 FILES数组名称说明 FILES userfile name 客户端机器文件的原名称 FILES userfile type 文件的MIME类型 如果浏览器提供此信息的话 一个例子是 image gif 不过此MIME类型在PHP端并不检查 因此不要想当然认为有这个值 FILES userfile size 已上传文件的大小 单位为字节 FILES userfile tmp name 文件被上传后在服务端储存的临时文件名 FILES userfile error 和该文件上传相关的错误代码 此项目是在PHP4 2 0版本中增加的 例10 3 用JavaScript验证表单 实例需求 除了使用PHP进行表单验证 还可以利用JavaScript验证表单 本例将ch10 1 php另存为ch10 3 php 仅对其中带 号的必填项进行验证 要求如下 姓名 电子邮件地址 密码不能为空 姓名字段的长度必须在4 16个字符范围 电子邮件地址必须是合法的地址 确认密码与用户密码要求一致 例10 4 笑话集展示 GET的运用 实例需求 本例通过对4个笑话的分别显示来说明全局变量 GET 是如何使用的 实例由两个页面构成 ch10 4 php为笑话集导航页 ch10 4 1 php为笑话具体显示页 小结 实现人机交互是动态网页技术的重要特征 本章主要介绍用PHP实现交互的两种方式 GET方式和POST方式 因为GET方法中的数据依赖于URL 安全性不高 传递的信息长度有限制 不能太多 适合于用于收藏或传递少量数据的情况 而POST方式的数据 收藏效果不好 但安全性比较高 同时也能传递不多于255个字符 适合于安全性要求高 传递数据量较大的情况 本章内容还包括全局变量 FILES 的用法以及如何使用PHP和JavaScript实现表单验证 这些内容对以后进行表单的验证有很大帮助 同时 编写人机交互程序时 要注意php ini中GLOBAL的状态 以及对复选框值的获取方式 。