学习PHP session的传递方式_php技巧

本文实例为大家分享了PHP session的三种传递方式,供大家参考,具体内容如下

既然学习到了就做下笔记,解决数据的共享,在也不要担心,什么时候还要你自己手动去设置打开cookie了!

(1)通过GET方式来传递session_id

<?php
$sid = "test";    //设置一个session的id
session_id($sid);   //将$sid的值当成是session_id,方便做测试
session_start();   //开启session
$_SESSION['user'] = "session的传递方式";
?>
<a href="session_3.php?sid=<?php echo session_id(); ?>">test_1.php</a>  //将session_id的值用GET传参的方式处理

//php配置文件的修改不同配置项的效果
session.use_only_cookies =   //关闭这个选项,就是允许通过get,自动生成session
<a href="session_3.php?PHPSESSID=<?php echo session_id(); ?>">test_1.php</a>
//这样写,可以省掉自己去通过$_GET去获取值

session.use_trans_sid = 1    //将这个选项打开,将自动的使用session_id
<a href="session_2.php">test_2.php</a>  //不需要加任何参数,

==================================================
<a href="session_3.php<?php echo "?".SID; ?>">test_1.php</a>这个的设置具体哪个有点忘记了反正SID就是一个常量,包含了所需要的内容session信息!

//session_3.php页面
session_id($_GET['sid']);  //接受sesssion_id;
session_start();
var_dump($_SESSION);    //打印结果看下

结果如图:

(2)在表单中通过隐藏的值来传递

//前面的公共部分不变
//通过form表单中隐藏来传递
<form action="" method="post">
  姓名:<input type="text" name="uname">
  <input type="hidden" name="sid" value="<?php echo session_id(); ?>">
  <input type="submit" value="确定">
</form>

//session_4页面中
$sid = $_POST['sid'];
session_id($sid);
session_start();
var_dump($_SESSION);    //打印结果看下,结果都是一样能实现,就不再重复的输入结果数据

(3)文件的形式

以上就是本文的全部内容,希望对大家学习了解PHP session的传递方式有所帮助。

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

时间: 2025-01-29 21:35:12

学习PHP session的传递方式_php技巧的相关文章

对比分析php中Cookie与Session的异同_php技巧

让大家对Cookie和Session有一个更深入的了解,并对自己的开发工作中灵活运用带来启示. 一.cookie机制 Cookies是服务器在本地机器上存储的小段文本并随每一个请求发送至同一个服务器.IETF RFC 2965 HTTP State Management Mechanism 是通用cookie规范.网络服务器用HTTP头向客户端发送cookies,在客户终端,浏览器解析这些cookies并将它们保存为一个本地文件,它会自动将同一服务器的任何请求缚上这些cookies . 具体来说

PHP封装的数据库保存session功能类_php技巧

本文实例讲述了PHP封装的数据库保存session功能类.分享给大家供大家参考,具体如下: PHP用数据库保存session类: <?php class SafeSessionHandler implements SessionHandlerInterface { public $save_path; public $session_name; public $table; public function __construct() { $this->table = new Table(&qu

php session 写入数据库_php技巧

本文实例介绍了php session 写入数据库的方法,分享给大家供大家参考,具体内容如下 <?php # # codeMaker Alpha 0.1.1 ( haowei.me ) # This framework comply with the GPL license agreement # class session_handler { protected $maxlifetime = null; protected $dbHandle = null; public $config = n

探讨如何把session存入数据库_php技巧

php的session默认的情况下是采用的文件方式来保存的,我们在php的配制文件php.ini中可以看到这样的一行,session.save_handler="files",这样的意思就是采用文件来保存session 的,要采用数据库来保存的话,我们需要修改成拥护模式,改称 session.save_handler="use"就可以了,但是,这仅仅是说明我门没有采用文件的方式存储session,我们还要选择数据库和建立数据库的表. 建立数据库和数据库的表结构,我们

Ubuntu server 11.04安装memcache及php使用memcache来存储session的方法_php技巧

本文实例讲述了Ubuntu server 11.04安装memcache及php使用memcache来存储session的方法.分享给大家供大家参考,具体如下: 1.首先安装memcache服务端: sudo apt-get install memcached 安装完成后系统 自动启动了 memcached服务占用11211端口 如需重新配置11211端口的服务 需要关闭已开启的memcached服务 手动启动: memcached -d -m 128 -p 11211 -u memcache

PHP session有效期问题_php技巧

一个已知管用的方法是,使用session_set_save_handler,接管所有的session管理工作,一般是把session信息存储到数据库,这样可以通过SQL语句来删除所有过期的session,精确地控制session的有效期.这也是基于PHP的大型网站常用的方法.但是,一般的小型网站,似乎没有必要这么劳师动众. 但是一般的Session的生命期有限,如果用户关闭了浏览器,就不能保存Session的变量了!那么怎么样可以实现Session的永久生命期呢? 大家知道,Session储存在

解析PHP的session过期设置_php技巧

网上很多人给出了解答:修改php配置文件中的session.gc_maxlifetime.如果想了解更多session回收机制,继续阅读.(本文环境php5.2) 概述:每一次php请求,会有1/100的概率(默认值)触发"session回收".如果"session回收"发生,那就会检查/tmp/sess_*的文件,如果最后的修改时间到现在超过了1440秒(gc_maxlifetime的值),就将其删除,意味着这些session过期失效. 1. session在se

php cli模式学习(PHP命令行模式)_php技巧

php_cli模式简介 php-cli是php Command Line Interface的简称,如同它名字的意思,就是php在命令行运行的接口,区别于在Web服务器上运行的php环境(php-cgi, isapi等) 也就是说,php不单可以写前台网页,它还可以用来写后台的程序. PHP的CLI shell脚本适用于所有的PHP优势,使创建要么支持脚本或系统甚至与GUI应用程序的服务端!--注:windows和linux下都支持php_cli模式 PHP-cli应用场景: 1.多线程应用 这

php下使用无限生命期Session的方法_php技巧

在PHP4.0中加入了对Session的支持,方便了我们很多程序,比如购物车等等!  在很多论坛中,Session也用于处理用户的登陆,记录下用户名和密码,使得用户不必每次都输入自己的用户名和密码!但是一般的Session的生命期有限,如果用户关闭了浏览器,就不能保存Session的变量了!那么怎么样可以实现Session的永久生命期呢?  大家知道,Session储存在服务器端,根据客户端提供的SessionID来得到这个用户的文件,然后读取文件,取得变量的值,SessionID可以使用客户端