PHP入门教程之会话控制技巧(cookie与session)_php技巧

本文实例讲述了PHP会话控制技巧。分享给大家供大家参考,具体如下:

Demo1.php

<form method="get" action="Demo2.php">
  姓名:<input type="text" name="username" /> <br />
  <input type="submit" value="提交" />
</form>

Demo2.php

<?php
  //echo $_POST['username'];
  //如果表单采用的 get 传输,那么接受必须采用
  echo $_GET['username'];
  //到底那种比较好呢。????
  //$_POST[''];  比较安全
?>

Demo3.php

<?php
  //创建一个 Cookie
  //Cookie 是在你的客户机存一个小文件,这个文件包含你登录时的信息
  //setcookie 可以创建一个客户机的 cookie 文件
  //第一个参数表示 cookie 的名称,第二个参数表示这个 cookie 名称的值
  //所谓的会话结束时,就是当你这个浏览器关闭时,就没有了,就自动删除
  //创建一个包含过期的 cookie, 过期时间采用当前的时间戳 + 秒即可
  //time()+(7*24*60*60) 表示未来的7 天
  //一旦 setcookie 改变了,一刷新浏览器,就会把旧的 cookie 覆盖掉
  setcookie('name','oneStopWeb',time()+(7*24*60*60));
?>

Demo4.php

<?php
  setcookie('name','oneStopWeb');
  //读取本机的 cookie,采用一个超级全局变量 $_COOKIE
  //里面放 cookie 名即可
  //有一个特性,setcookie 并不是及时生成,它会慢一拍
  //PS:慢一拍,第一次刷新,只是生成覆盖了原来。
  //但获取的还是之前的,而第二次刷新,才能真正获取到。
  //echo $_COOKIE['name'];
  //用变量检测函数来判断 cookie 是否存在
  if(isset($_COOKIE['name'])){
    echo $_COOKIE['name'];
  }else{
    echo '不存在此用户';
  }
?>

Demo5.php

<?php
  //删除 cookie
  setcookie('name','oneStopWeb');
  //中间删除掉了这个 cookie
  //将这个值设置为空即可
  //setcookie('name','');
  //我将过期时间调整到目前的时间还少一秒,那么就等于是过期的了
  setcookie('name','oneStopWeb',time()-1);
  echo $_COOKIE['name'];
?>

Demo6.php

<form method="post" action="Demo7.php">
  姓名:<input type="text" name="username" /> <br />
  <input type="submit" value="提交" />
</form>

Demo7.php

<?php
  //如果姓名的指定的姓名相同,那么就生成一个 cookie
  //完成登录
  if(isset($_POST['username']) && $_POST['username']=='oneStopWeb'){
    //如果正确了,我生成一个 cookie,再跳转
    setcookie('name','web');
    header('Location:Demo8.php');
  }else{
    header('Location:Demo6.php');
  }
?>

Demo8.php

<?php
  if(isset($_COOKIE['name'])){
    echo '欢迎光临:'.$_COOKIE['name'];
  }else {
    echo '非法登录';
  }
?>

Demo9.php

<?php
  session_start(); //开户 session 会话处理
  //session 只要用到这个,就必须开启session_start()
  //放在文件开头
  //创建 session ,直接采用超级全局变量赋值即可
  //session 是存在服务器端,一般存放 1440 秒,
  //如果网页没有任何操作,会自动销毁,当然,可以通过 php.ini 去修改保存时间
  //如果关闭了浏览器,那么也自动销毁。
  //及时性,不像 cookie 会慢半拍
  $_SESSION['name1'] = 'oneStopWeb';
  $_SESSION['name2'] = 'oneStopWeb';
  //echo $_SESSION['name'];
// if(isset($_SESSION['name'])){
//   echo $_SESSION['name'];
// }else{
//   echo '不存在此人。';
// }
  //不是删除的方法
// $_SESSION['name'] = '';
  //真正的删除方法
  //unset($_SESSION['name']);
// if(isset($_SESSION['name'])){
//   echo $_SESSION['name'];
// }else{
//   echo '不存在此人。';
// }
?>

Demo10.php

<?php
  session_start();
  //销毁所有 session ,销毁的也慢半拍
  session_destroy();
  echo $_SESSION['name1'] ;
  echo $_SESSION['name2'] ;
  //cookie适用于会员登录,购物车啊。。。
  //因为他不占用服务器资源,所以会员特别多,购物车特别多的,就用 cookie
  //session 一般用于后台管理登录,人少
  //安全性,一段时间不操作会自动过期
?>

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP中cookie用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索php
, cookie
, session
会话控制
会话cookie、cookie会话保持、f5 cookie会话保持、nginx cookie会话保持、基于cookie的会话保持,以便于您获取更多的相关知识。

时间: 2024-08-17 18:33:03

PHP入门教程之会话控制技巧(cookie与session)_php技巧的相关文章

PHP会话操作之cookie用法分析_php技巧

本文实例分析了PHP cookie用法.分享给大家供大家参考,具体如下: 会话技术:cookie 允许服务器端脚本在浏览器存储数据的技术, 允许服务器向浏览器发送指令,用来管理存储在浏览器端的cookie数据 浏览器如果存储了某服务器所存储的cookie数据,请求时会带上cookie的数据 //增.改 setcookie(key,val); //删 setcookie(key,''); //获取浏览器携带的cookie数据 $_COOKIE[key] 特征: 有效期: 默认是临时cookie,也

PHP入门教程之操作符与控制结构流程详解_php技巧

本文实例讲述了PHP入门教程之操作符与控制结构流程.分享给大家供大家参考,具体如下: Demo1.php <?php $username = "chaoyv"; echo "His name is $username !"; $username2 = "吴者然"; echo "His name is $username2 ! "; echo "<br/>"; echo "His

php用户登录之cookie信息安全分析_php技巧

本文实例讲述了php用户登录之cookie信息安全.分享给大家供大家参考,具体如下: 大家都知道用户登陆后,用户信息一般会选择保存在cookie里面,因为cookie是保存客户端,并且cookie可以在客户端用浏览器自由更改,这样将会造成用户cookie存在伪造的危险,从而可能使伪造cookie者登录任意用户的账户. 下面就说说平常一些防止用户登录cookie信息安全的方法: 一.cookie信息加密法 cookie信息加密法即用一种加密方法,加密用户信息,然后在存入cookie,这样伪造者即使

ASP入门教程-处理会话事件

Session 对象有两个事件:即 OnStart 事件和 OnEnd 事件.通过对这两个事件过程编写脚本可以在会话开始和结束时执行指定的操作.编写这些事件过程的脚本代码时,必须使用 SCRIPT 标记并将 RUNAT 属性设置为 Server ,而不能使用一般的 ASP 脚本定界符<% 和 %>:这些事件过程的脚本代码必须包含在一个名为 global.asa 的文件中,而该文件必须存放在应用程序的根目录中. 1.Session_OnStart 事件 Session_OnStart事件是在服务

BootStrap入门教程(二)之固定的内置样式_javascript技巧

相关阅读: BootStrap入门教程(一)之可视化布局 HTML5文档类型(Doctype) Bootstrap使用了一些HTML5元素和CSS属性,所以需要使用HTML5文档类型. <!DOCTYPE html> <html> .... </html> 移动设备优先 <meta name="viewport" content="width=device-width, initial-scale=1.0">   宽度

ASP入门教程-保存会话信息

一.使用 Contents 集合保存会话信息 1.Contents 集合是使用 Session 对象定义的在 ASP 应用程序中的一组变量.这些变量的作用域为用户层,并且在整个 ASP 应用程序中都是可用的.这是Session 对象默认的集合,因此下述两种格式是等价的: Session.Contents("变量名") Session("变量名") 其中,"变量名"是需要操作的 Session 变量名称. 2.实例代码(1.asp):使用 Sess

PHP入门教程之PHP操作MySQL的方法分析_php技巧

本文实例讲述了PHP操作MySQL的方法.分享给大家供大家参考,具体如下: 设置Zend 软件所有 UTF-8 编码 设置单个项目 UTF-8 的编码 Demo1.php <?php header('Content-Type:text/html; charset=utf-8;'); //第一步,连接到 Mysql 服务器 3306 //第二步参数,服务器地址:第二个参数,服务器的用户名:第三个参数,服务器密码 //@ 如果出错了,不要出现警告或错误,直接忽略 //die 函数之前,先连接一下,报

php入门教程之Zend Studio设置与开发实例_php技巧

本文实例讲述了php入门教程之Zend Studio设置与开发方法.分享给大家供大家参考,具体如下: 新建文档的模板设置 新建文档的模板设置 Demo1.php: <?php echo "阅谁问君诵,水落清香浮." ?> orderform.php: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD

PHP 之Section与Cookie使用总结_php技巧

SESSION与COOKIE区别: Session 将信息保存在服务器上.服务器在接受到唯一的SESSION_ID后,根据这个ID获取相关数据,然后将信息传递到客户端(浏览器). Cookie 是将所有信息以文本的形式存在本地文件,并由客户端(浏览器)进行管理与维护. 因为Session 数据存储在server端,所以远程client无法对数据进行修改;而Cookie存储在client本地,容易被获取和篡改.所以Session安全性较高. SESSION 介绍: PHP5 后session被设置