用户名:  密码:   
您当前的位置:首页 > 网页设计 >  PHP > 

第8讲 插入表单,用POST与GET方法,用$_POST[],$_GET[],$_SESSION[]传参及获取值,URL编解码urlencode(),urldecode

上次修改时间: 2016-01-22 22:27:15      来源:网络总结      作者:钢铁长陈
上一页      路径:DSD\Learn\PHP相关\PHP入门到精通笔记\      下一页

插入表单,用POST与GET方法,用$_POST[],$_GET[],$_SESSION[]传参及获取值,URL编解码urlencode(),urldecode

8.1 Web页表单元素的组成
1) 表单是用来让用户输入数据的,DM可快速插入表单,表单结构:
<form name="form_name" method="method" action="url" enctype="value" target="target_win">...</form>,
2) 表单由表单元素组成,常见元素的标记有输入域<input>,选择域<select>和<option>,文本域<textarea>等
3) 文本框:用来录入文字的,可以属性栏改名,设字符宽度,最多字符数,单行,多行,密码,初始值等
4) 文件域:用来选择要上传文件的
5) 单选与多选按钮
6) 提交与重置按钮,都是同一个,在属性栏动作下选提交还是重设
7) 隐藏区域:用选搜集信息的
8) 下拉列表框:它的值在属性栏,列表值里设,属性栏还可设其初始选择那个值
9) 文本域:备注那框,属性栏可设多行还是单行

8.2 在普通的Web面中插入表单
1) DM中快速插入栏——表单下,有个插入表单的按钮
2) 插入后红色虚线部分是表单,在里面可以插入表单的各种元素用表格布局,在里面添加元素
以数组命名复选框

8.3 获取表单数据的两种方法,POST和GET
1) 使用POST方法提交表单,把<form>表单的method属性设为POST,例:method="POST",
特点:不依赖URL,不显示在地址栏,不限制字节数,后台传输,安全性高,适合传大量数据到服务器
2) 使用GET方法提交交表单,把<form>表单的method属性设为get,例:method="GET"
特点:长度最多1M字节,超过切断,表单数据是附加到URL地址后面发送的,多个参数用&隔开
例:http://url?name1=value1&name2=value2.....

8.4 PHP传参的3种常用方法,$_POST[],$_GET[],$_SESSION[]
1) $_POST[] 全局变量,用以获取表单元素的值
 语法:$_POST[name]
 例:$user=$_POST["user"];  //如要获取表单中有个名为user的文本框的值
2) $_GET[] 全局变量,用以获取URL的值
 语法:$_GET[name]
 例:$user=$_GET["user"]  //用$_GET全局变量获取表单文本框的值
3) $_Session[] 变量,获取Session变量的值
 语法:$_SESSION[name]
 例:$user=$_SESSION["user"]

8.5 在Web面中嵌入PHP脚本
1) 一种方法是在html文档中加入PHP标记符,在标记符中写入PHP代码
2) 把PHP代码写到单独的文件中再引用,如include("top.php");
3) 为表单元素的value属性赋值,例:$hidden="yg0025";

8.6 在PHP中获取表单数据
1) 获取文本框、密码域、隐藏域、按钮、文本域的值
  if($_POST["submit"]=="登录"){
   echo "您输入的用户名为:".$_POST[user]."&nbsp;&nbsp;密码为:".$_POST[pwd];
  }
 2) 获取单选按钮值,因为是单选所以只有一个值,具有相同的name值,不同的value值
  echo "您选择的性别为";
  echo $_POST["sex"];
 3) 获取复选框的值,相同name值,多个value值,通过数组获取
  if(($_POST[mrbook]!=null)){
   echo "您的选择的结果是:";
   for($i = 0;$i<count($_POST[mrbook];$i++)
    echo $_POST[mrbook][$i]."&nbsp;&nbsp;";
  }
4) 获取下位列表/菜单列表框值方法相同
 if($_POST[submit]=="提交"){
  echo "你选的主题是".$POST[select]
 }
5) 获取文件域的值,有个特有的类型,限制上传的类型
 echo $_POST[file]; //输出的是文件绝对路径

8.7 对URL传递的参数进行编码解码,获取url参数仍用$_GET[]
1) 用urlencode()函数对url地址后面参数转为url编码,如:空格的url编码是%20
url编码的好处是安全,和可以传输url地址中不允许的特殊的符号,如空格等
<a href="index.php?id=<?php echo urlencode("编程词典");?>">PHP编程词典</a>
//这里的<?php...?>为PHP标记符
2) 解码用urldecode()函数
<a href="index.php?id=<?php echo urlencode("编程词典");?>">PHP编程词典</a>
<?php echo "你提交的查询字符串解码后是".urldecode($_GET[id]);?>

8.8 PHP与Web表单的综合应用
1) 表单用以收集客户端提交的信息,是实现网站互动功能的组成部分
2) 演示在表单中填加了多元素,包括,文本框,单选,并获取表单元素的值,传递用POST或GET方法,
实现上传要用一条语句,在表单中填一些数据,提交后输出获取的表单元素的值,复选用输出数组方式