欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

关于session会话的有关问题 php

程序员文章站 2024-02-11 10:27:28
...
关于session会话的问题 php
本帖最后由 redenn 于 2012-11-11 15:37:21 编辑 今天看了关于session的视频。 那位老师说,当浏览器访问服务端的时候创建一次会话。 然后 php页面中session_start在服务器创建了一个

session_id,它把session_id以cookie的方式返回给浏览器。浏览器cookie带着这个id去访问其它的页面,从而能找到服务器端的这个id对应

的session文件,从而执行数据交流。

但,有一些问题不明白:

1.服务器把session_id传递给浏览器的cookie,这个cookie是不是在浏览器客户端的默认cookie文件夹里确实存在的呢,存在的时间又是多少

呢?

2.当我访问网站时如何能确确实实地得到 那个session_start为我准备的会话的session_id。和其中中的内容。


3. 通过这个session_id如何实现,curl模拟登陆呢?


希望各位好心的朋友,能为我解惑啊,或给我一些思路。
------解决方案--------------------
1、session_id 存在于浏览器搜使用的内存里,而不是对应的cookie文件中。因为session_id的生存时间是浏览器打开期间,而cookie文件是在浏览器关闭时才创建,用于保存尚未过期的cookie变量

2、session_start 后,你可以用 session_id 函数获取当前的 session_id,用 $_SESSION 数组管理 session 变量

3、不是通过 session_id 模拟登陆,而是通过 cookie 模拟登陆
curl 提供了
CURLOPT_COOKIE 发送 cookie 变量
CURLOPT_COOKIEFILE 发送 cookie 文件
CURLOPT_COOKIEJAR 接收 cookie 到文件
------解决方案--------------------
引用:
1、session_id 存在于浏览器搜使用的内存里,而不是对应的cookie文件中。因为session_id的生存时间是浏览器打开期间,而cookie文件是在浏览器关闭时才创建,用于保存尚未过期的cookie变量

2、session_start 后,你可以用 session_id 函数获取当前的 session_id,用 $_SESSION 数组管理 sessio……


1.session的生存时间不是1440秒(24分钟)么,而且浏览器禁用了cookie,则session_start()生成的session_id对于浏览器的操作都会无效。所以session_id不是与cookie有关么?

2.因为我是想访问别人的网站, 然后得到我访问中别人网站的session_start()产生的session_id,这怎么获得。

3.因为,许多网站都是以session做为身份验证,而我用cookie就无效了。所以想以session_id所对应的文件里的内容,作为模拟登陆的验证。
------解决方案--------------------
该回复于2012-12-08 14:13:03被管理员删除
关于session会话的有关问题 php

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频