第一节PHP与Web页面交互PHP与Web页面交互是实现PHP网站与用户交互的重要手段。在PHP中提供了两种与Web页面交互的方法,一种是通过Web表单提交数据,另一种是直接通过URL参数传递数据。Web表单提交数据有两种方式:GET方法和POST方法。POST方法不依赖于URL,不会将传递的参数值显示在地址栏中,而是将参数值放置在是HTTP包的包体中,这样可以传输更多的内容,传输方法也更加安全,所以POST方法通常用于上传信息。PHPGET方法完全依赖于URL,参数值会附在URL之后,以?分割URL和传输数据,多个参数用连接,这样传输安全性很低,而且受到URL长度的限制,传输内容很小,所以GET方法通常用于获取信息。Web表单用get方法提交数据,最终效果如同直接通过URL参数传递数据。PHP针对这两种请求方法,提供了两个全局变量_GET[],分别用来获取POST请求和GET请求的参数值。$_GET[]建立一个get请求的表单页面名叫form_get.html:!DOCTYPEhtmlhtmlheadmetacharset=UTF-8titleGET方式的表单/title/headbodyformaction=form_get.phpmethod=get账户:inputname=usernametype=text/br/密码:inputname=passwordtype=password/br/邮箱:inputname=emailtype=email/br/inputtype=submit//form/body/html?phpechopre;var_dump($_GET);$username=$_GET[username];$password=$_GET[password];$email=$_GET[email];echobr/接收到的账户:.$username;echobr/接收到的密码:.$password;echobr/接收到的邮箱:.$email;?$_POST[]同formget.html,我们建立一个名叫formpost.html,内容仅仅把form元素的action和method修改一下:!DOCTYPEhtmlhtmlheadmetacharset=UTF-8titlePOST方式的表单/title/headbodyformaction=form_post.phpmethod=post账户:inputname=usernametype=text/br/密码:inputname=passwordtype=password/br/邮箱:inputname=emailtype=email/br/inputtype=submit//form/body/html运行界面除了地址栏和标题栏,其他内容完全和formget.html一致。这时候点击跳转到同目录下的formpost.php文件,文件内容为:?phpechopre;var_dump($_POST);$username=$_POST[username];$password=$_POST[password];$email=$_POST[email];echobr/接收到的账户:.$username;echobr/接收到的密码:.$password;echobr/接收到的邮箱:.$email;?第二节会话控制会话控制是一种跟踪用户的通信方式例如:当一个用户在请求一个页面后,再次请求这个页面,网站是无法知道这个用户刚才是否曾经来访问过。由此我们就会觉得奇怪,平时我们在电商网站购物时,只要我们在这个站点内,不论我们怎么跳转页面,网站总会记得我是谁,这是怎么做到的呢?这就是运用了HTTP会话控制。在网站中跟踪一个变量,通过对变量的跟踪,使多个请求事物之间建立联系,根据授权和用户身份显示不同的内容、不同页面。cookiecookie是在服务器端创建,并写回到客户端浏览器浏览器接到指令则在本地临时文件夹中创建了一个cookie文件,其中保存了你的cookie内容客户端浏览器每次访问网站时,都会检测是否有该网站的cookie信息,如果有的话,也会同时发送过去。注意:cookie内容的存储是键/值对的方式,键和值都只能是字符串。定义cookiesetcookie(键,值,有效期(秒))setcookie(name,zhangsan,time()+);//如果不设置有效期,关闭浏览器就会消失setcookie(pwd,,time()+);删除cookie(设定过期时间,使失效)setcookie(name,,time()-1);setcookie(age,null,time()-1);setcookie(sex,,time()-1);sessionsession与cookie相似,只是原来将信息存在客户端,现在保存到服务端客户端第一次访问时将信息保存到服务器,同时分配给用户一个固定长度的字符串(sessionID),并以cookie方式保存在客户端在php.ini配置文件中,可以指定这个sessionID的名称:session.name=PHPSESSID开启session要保证在它之前,没有向浏览器输出过任何内容,通常放在代码第一行session_start();往session中存储信息$_SESSION[name]=张三;$_SESSION[sex]=男;$_SESSION[age]=18;获取session信息$name=$_SESSION[name];销毁session中的信息unset($_SESSION);销毁session文件session_destroy();销毁客户端cookie信息setcookie(PHPSESSID,,time()-1);cookie与session的区别建议将登陆信息等重要信息存放为session,其他信息如果需要保留,可以放在cookie中PHP-GD库「程序员培养之路第三十九天」PHP-文件上传和下载「程序员培养之路第三十八天」PHP-文件处理系统「程序员培养之路第三十七天」
转载请注明:http://www.jiaju1314.com/zyyd/zyyd/17177.html