创建动态内容
- 动态内容可以给网站使用者不同的和实时变化的内容,极大地提高了网站的可用性。使用PHP语言的主要原因之一,就是要产生动态内容
表单与PHP
- 通过PHP服务器端脚本语言,程序可以处理那些通过浏览器对Web应用进行数据调用或添加的请求
- 不管是Web邮箱,还是QQ留言,都经常要填写一些表格,再由这些表格把数据发送出去,完成这个工作的部件就是“表单(form)”
设计表单元素
表单的基本结构
- 表单的基本结构是由
<form></form>
标识包裹的区域 - 例如:
<HTML> <HEAD> </HEAD> <BODY> <form action=" " method=" " enctype=" "> ... </form> </BODY> </HTML>
- 其中,<form>标识必须包含属性。action指定数据所要发送到的对象文件。method指定数据传输的方式。如果在上传文件等操作时,还要定义enctype属性来指定数据类型
文本框
- 语法:
<input type="text" [name="name-char" size="size_num" ...]/>
- name和size都为文本框的可选属性,还可以参考PHP手册自行定义更多的属性
复选框
- 语法:
<input type="checkbox" [name="name-char" value="value" ...]/>
- name和value都为复选框的可选属性,还可以参考PHP手册自行定义更多的属性
单选按钮
- 语法:
<input type="radio" [name="name-char" value="value" ...]/>
- name和value都为单选按钮的可选属性,还可以参考PHP手册自行定义更多的属性
下拉列表
- 语法:
<select name="name" size="size_num"> <option value="value1"> value1</option> <option value="value2"> value2</option> ....(more option) </select>
- 下拉列表是通过
<select></select>
标识表示的,下拉列表的选项则是通过<option></option>
标识表示的。<select>
标识中的name定义为下拉列表的name属性,以确认它的唯一性。<option>
标识中的value定义需要传递的值
重置按钮和提交按钮
- 重置按钮用来重置所有的表单输入数据。要把HTML页面中所有的数据发送出去给相应的PHP文件进行处理,就需要使用submit按钮,也就是提交按钮。
-
语法:<input type="reset" value="value" .../>
-
语法:<input type="submit" value="value" .../>
- 这里的Value是按钮所显示的字符
传递数据
用POST方法传递数据
<form action=URL method="post">
定义了此表单在把数据传递给目标文件时使用的是POST方式,POST方式是比较常见的表单提交方式。通过POST方式提交的变量,不受特定变量大小的限制,并且被限制的变量不会再浏览器地址栏里以URL的方式显示出来
用GET方式传递数据
- 通过GET方式提交的变量,有大小限制,不能超过100个字符。它的变量名与之相对应的变量值都会以URL的方式显示在浏览器的地址栏里。若 传递敏感隐私的数据,则不推荐使用此方式
- 在URL中,GET方式通过”?”后面的数组元素的键名来获取元素的值,对元素赋值使用“=”号
PHP获取表单传递数据的方法
- 如果表单使用POST方式传递数据,则PHP要使用全局变量数组$_POST[]来读取所传递的数据
- 在表单中,元素传递数据给$_POST[]全局变量数组,其数据以关联数组中的数组元素形式存在。以表单元素的名称属性为键名,以表单元素的输入数据或是传递的数据为键值
- 如果表单使用GET方式传递数据,则PHP要是用全局变量数组_GET[]来读取所传递的数据。与_POST[]相同,表单元素中传递数据给$_GET[]全局变量数组,其数据以关联数组中的数组元素形式存在。以表单元素的名称属性为键名,以表单元素的输入数据或是传递的数据为键值
PHP对URL传递的参数进行编码
- PHP对URL传递的参数进行编码,一是可以实现对所传递数据的加密;二是可以对无法通过浏览器进行传递的字符进行传递
- 实现编码操作一般使用urlencode()函数和rawurlencode()函数。反向操作就是urldecode()函数和rawurldecode()函数
GET和POST的区别和联系
- POST是向服务器传送数据;GET是从服务器上获取数据
- POST是通过HTTP POST机制将表单内各个字段机器内容防止在HTML HEADER内一起传送到ACTION属性所指的URL地址,用户看不到这个过程。GET是吧参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到
- 对于GET方式,服务器用Request.QueryString获取变量的值;对于POST方式,服务器端用Request.Form获取提交的数据
- POST传送的数据量较大,一般默认为不受限制
- POST安全性较高;GET安全性非常低,但是执行效率却比POST方法高
- 在做数据添加、修改或删除时,建议用POST方式;而在做数据查询时,建议用GET方式
- 对于机密信息的数据,建议采用POST数据提交方式
非常感谢分享,学习到了
感谢分享,写了这么多内容