1. 云栖社区>
  2. PHP教程>
  3. 正文

Php与html表单

作者:用户 来源:互联网 时间:2017-12-01 16:14:52

htmlphp表单

Php与html表单 - 摘要: 本文讲的是Php与html表单, 表单数据的提交方式 1)  通过GET方法提交数据在使用GET方法时,表单数据被当作URL的一部分一起传过去。格式如下:[url]http://url?name1=value1&name2=value2---[/url]其中:ur

表单数据的提交方式
 
1)  通过GET方法提交数据
在使用GET方法时,表单数据被当作URL的一部分一起传过去。格式如下:
[url]http://url?name1=value1&name2=value2---[/url]
其中:url为表单响应地址;name为表单元素的名称;value为表单元素的值;url和表单元素之间用“。”隔开,多个表单元素之间用“&”隔开,每个表单元素的格式都是“name=value”,固定不变。
Php使用$_GET预定义变量自动保存通过GET方法传过来的值。格式为$_GET[name]
缺点:信息显示在客户端浏览器上,使用户资料暴露,而且URL本身受长度限制(1024K),不能传递较大的数据。
2) 通过POST方法提交数据
     POST方法不依赖URL,所有提交的信息在后台传输,不会显示在地址栏中,安全性高,而且没有长度限制。
注意:有点PHP版本中直接写”$name”就可以调用表单元素的值,这和php.ini的配置有关,找到Register_globals=onp这行。如果为on,就可以直接写成“$name”,反之则不可以。直接应用表单名称十分方便,但也存在一定安全隐患。推荐关闭globals
 
获取提交的表单数据
 
1)  获取按钮的数据
按钮分为提交按钮(submit)、重置按钮(reset)和普通按钮(botton)3种。
提交按钮(submit:当表单信息录入完毕后,单击提交按钮,就可以将数据传到标签中action属性所指的URL。
标签的格式:

       

标签中的name是所有表单元素都有的属性,即这个表单元素的名字;method为表单数据的传送方法;action为表单数据所请求的页面地址。
标签指定了表单中的大多数的表单元素。用type属性来指定表单元素类型,value为该元素的值。
重置按钮(reset:是恢复表单的信息到初始该页时的数据。
普通按钮(button:可以单击,但不触发任何事件。一般用来和javascript脚本的onclick事件配合使用。
2)  获取文本区域的数据
Text文本框可以输入字母、数字、汉字和各种可见符号,常见格式如下:

Size属性是设置文本框的长度;maxlength属性为文本框内可输入字符串的最大长度。
Password密码框只能接收键盘上的字母、数字和符号,不能输入中文。格式如下:

文本框与密码框最大的区别是:文本框图的内容是可见的,而密码框的内容都是以“*”号来代替的。
3)  获取单选按钮的数据
Radio(单选按钮)一般是多个按钮一起出现,具有相同name值和不同value值,在一组单选按钮中同一时间只能有一个被选取。格式如下:

Checked属性是默认选取的意思。当表单页面被初始化时,有check属性的表单元素为选中状态。
4)  获取复选框的数据
在很多时候并不是单一的选择,而是同时有很多条件都符合要求,这时就要使用checkbox(复选框)。格式如下:

由于复选框一般都时多个同时存在,为了便于传值,name的名字可以是一个数组形式,格式如下:

在返回界面可以使用count()函数计算数组大小,配合for循环输出。
示例:

 
    您对公司的哪些产品有所了解。
 
  
   
    php类  
        vb类  
        java类  
        jsp类

    c#类  
        .net类  
        asp类  
        vc类
 
 
   
 
 
        
<?php
if(($_POST[mrbook] != null)){
echo "请确认您的选择:";
for($i = 0;$i < count($_POST[mrbook]);$i++)
        echo $_POST[mrbook][$i]."  ";
}
?>

 


5)  获取列表框的数据
列表框有下拉列表框、列表框和多选列表框3种形式。
下拉列表框的格式为:

        1970
        1971
        ------

当size的值为1时,就是下拉列表框。当size的值大于1时,为列表框。当有multiple属性时就变成了多选框。在应用多选框时,name属性值应设为数组,这样才可以传多个值。多选框的格式如下:

        1970
        1980
        ------

进行多重选择时,可以按下鼠标左键进行拖曳,或按下(ctrl)键,一个一个的选取。如果选取连续的记录,可以先选取其中一端最边上的记录,然后按住(shift)键,再选取另一端的记录,就可以连续选取。
示例:

 

 
    请挑选出php类图书
 
 
   
      PHP完全手册
      asp编程宝典
      php范例宝典
      php从入门到精通
      delphi函数参考手册
   
 
 
   


 


<?php
if($_POST[action] == "list")
echo "你选择的是:
";
for($i = 0; $i < count($_POST[select]); $i++)
        echo $_POST[select][$i]."  ";
?>
6)  获取文本域的数据
文本域(textarea),双叫多行文本框,可以输入多行文字,并且可以随意换行。格式如下:
文本内容
Rows属性表示的是文本域的行高;cols属性表示列宽;文本域没有value 属性。
7)  获取文件域的数据
文件域主要应用于有文件或图片需要上传的页面。语法格式如下:

文件域有一个特有属性:accept,是指定用户可以上传的文件类型。
示例:
<?php
echo $_POST[file];
?>




注意:要使用文件域,必须指定enctype属性为:enctype="multipart/form-data"
8)  获取隐藏域的数据
不显示在页面上的文本框,一些不必要显示的信息或需要传送的参数可以放到隐藏域中。格式如下:

 
在php中处理表单变量
 
在php中接收的表单变量,只在响应页内有效。$_POST/GET[]变量属于自动变量,它的值随着页面的更新而更新。当响应页刷新或再次请求其它页面时,从上一个页面接收的$_POST/GET[]变量会消失,如果同时接收了新的表单变量,$_POST/GET会自动进行添加或覆盖。
 
对表单传递的变量值进行编码与解码
 
在php中使用两种编码方法:URL编码和BASE64编码
1)  URL编码与解码
URL编码是一种浏览器用来打包表单输入数据的技术,是对地址栏传递参数进行的一种编码规则。
Php中实现对查询字符串进行URL编码可以通过函数urlencode()实现。格式为:
Urlencode(string str)                     //该函数实现将字符串str进行URL编码。只能对汉字和特殊字符进行编码。
Php中对URL编码后的查询字符串进行解码,可以通过函数urldecode()实现。格式为:
Urldecode(string str)                     //该函数实现将URL编码str进行解码。
说明:对于服务器来说,编码前后的字符串并没有什么区别,服务器能自动识别,在实际应用中,一般不需要进行解码。
2)  BASE64编码与解码
用来把任意组合的8位字节描述为一种不易被人直接识别的形式,在BASE64编码后的字符串只包含英文字母大小写、数字、“+”与“”共64个基本字符。
Php实现字符串的BASE64编码可以通过base64_encode()实现。格式为:
Base64_encode(string data)
Data:指要进行BASE64编码的数据。该函数的返回结果为字符串类型。
Php实现对BASE64编码的字符进行还原可以通过函数base64_decode()实现。格式为:
Base64_decode(string encode_data)                    //encode_data:要进行BASE64解码的字符串。
示例:


 
    base64编码
    base64解码
 
 
   


   


 
 
    经过BASE64编码后:
<?php
echo "".base64_encode($_POST[coding]);
?>   
    经过BASE64解码后:
<?php
echo "".base64_decode($_POST[decode]);
?>   
 
 
      
 
 

本文出自 “键盘系人生” 博客,请务必保留此出处http://llk726.blog.51cto.com/622293/121367

以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索html , php 表单 ,以便于您获取更多的相关知识。