悟已往之不谏,知来者之可追

PHP基础知识(八)

会话技术

一、http请求信息:

  (1)第一部分:请求命令。

  (2)第二部分:请求头。

  (3)第三部分:请求体。

  

二、页面之间的参数传递:

  1、通过hidden标签传递数据。

  2、利用超链接传递参数。

    url?para1=a&para2=b.

  3、通过使用header函数重定向功能或者JavaScript重定向功能。

    (1)js重定向:

              1 <script>

              2 window.location(url);

              3 </script> 

    (2)header重定向:

        header("Location:url");

  4、通过cookie将用户的个人信息存放在浏览器主机上,其他PHP程序通过读取浏览器端cookie文件中的信息。

     (1)分为会话cookie(设置的cookie存在时间是小于当前时间的,当该浏览器进程关闭时,cookie文件就会被删除)和持久cookie(设置cookie时间是大于当前cookie创建时间,所以cookie文件会保存在客户端硬盘上,直到时间大于设定时间时,该cookie文件才会被删除)。

     (2)创建:

        ·语法格式:

          bool setcookie(string name,string value,[int expire,string path,string domain,int secure]);

        ·

 1 //setcookie.php
 2 <?php
 3     setcookie("name","yang");
 4     setcookie("age","10",time()+60);
 5     setcookie("college","xidian",time()+60);
 6     header("Location:getcookie.php");
 7 ?>
 8 
 9 //getcookie.php
10 <?php
11     if (isset($_COOKIE['name'])) {
12         # code...
13         echo "your name is ".$_COOKIE['name']."<br>";
14     }else{
15         echo "no cookies";
16     }
17     if (isset($_COOKIE['ha'])) {
18         # code...
19         echo "your name is ".$_COOKIE['ha']."<br>";
20     }else{
21         echo "no cookies";
22     }
23 ?>
24 
25 //deletecookie.php
26 //删除所有cookie
27 <?php
28     $time=time()-3600;
29     foreach ($_COOKIE as $key => $value) {
30         # code...
31         setcookie($key,'',$time);
32     }
33 
34     if (isset($_COOKIE['name'])) {
35         # code...
36         echo $_COOKIE['name'];
37     }
38 
39 ?>
View Code

 

 

 

        ·cookie数组使用:

          setcookie(string name[下标],string value,[]);

  5、通过session将用户的个人信息存放在浏览器主机上,其他PHP程序通过读取浏览器端session文件中的信息。

    

 

三、session技术:

  1、使用步骤:

    

 1 //创建session
 2 <?php
 3     //启动session
 4     session_start();
 5     $_SESSION['name']='yang';
 6     $_SESSION['age']=20;
 7     $_SESSION['password']=md5('admin');
 8 ?>
 9 <br>
10 <a href="read_session.php">读取session信息</a>
11 //读取session文件
12 <?
13     session_start();
14     if(isset($_SESSION['name'])){
15         $name=$_SESSION['name'];
16     }
17     echo $name;
18 ?>
View Code

 

  2、删除session信息:

    (1)session_unset() ,$_SESSION=array()

        删除session中所有信息,但不删除session文件。

    (2)unset()

        释放session中的某一个元素。

    (3)session_destory()  删除session文件。

  3、获取session文件信息:

   (1)string session_id([string id]) 

 

posted @ 2018-10-19 17:09  monty1  阅读(122)  评论(0编辑  收藏  举报